{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "['/Users/ccoley/rdchiral', '', '/Users/ccoley/rdchiral/test', '/Users/ccoley/ASKCOS/Make-It', '/Users/ccoley/ASKCOS/ASKCOS_Website', '/Users/ccoley/deepchem', '/Users/ccoley/rdchiral/test/\\n\\nPATH=/opt/local/bin', '/opt/local/sbin', '/Users/ccoley/miniconda3/bin', '/Users/ccoley/miniconda2/bin', '/Usrs/ccoley/deepchem', '/usr/local/bin', '/usr/bin', '/bin', '/usr/sbin', '/sbin', '/Library/TeX/texbin', '/opt/X11/bin', '/usr/local/sbin\\n', '/Users/ccoley/miniconda3/envs/askcos_newrdkit/lib/python36.zip', '/Users/ccoley/miniconda3/envs/askcos_newrdkit/lib/python3.6', '/Users/ccoley/miniconda3/envs/askcos_newrdkit/lib/python3.6/lib-dynload', '/Users/ccoley/miniconda3/envs/askcos_newrdkit/lib/python3.6/site-packages', '/Users/ccoley/miniconda3/envs/askcos_newrdkit/lib/python3.6/site-packages/IPython/extensions', '/Users/ccoley/.ipython']\n"
     ]
    }
   ],
   "source": [
    "import sys, os\n",
    "sys.path = [os.path.dirname(os.getcwd())] + sys.path\n",
    "print(sys.path)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2018.09.1\n"
     ]
    }
   ],
   "source": [
    "import rdkit\n",
    "import rdkit.Chem as Chem\n",
    "import rdkit.Chem.AllChem as AllChem\n",
    "print(rdkit.rdBase.rdkitVersion)\n",
    "from rdkit.Chem import AllChem"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "['/Users/ccoley/rdchiral/rdchiral']\n"
     ]
    }
   ],
   "source": [
    "import rdchiral\n",
    "print(rdchiral.__path__)\n",
    "from rdchiral.main import rdchiralRun, rdchiralRunText, rdchiralReaction, rdchiralReactants"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "def sep_bar():\n",
    "    print('')\n",
    "    for i in range(3):\n",
    "        print('='*80)\n",
    "    print('')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "from rdkit.Chem.Draw import IPythonConsole \n",
    "from rdkit.Chem.Draw.MolDrawing import MolDrawing, DrawingOptions "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['COC[CH2:6][CH2:5][O:4][C:2]([CH3:1])=[O:3]']\n",
      "Added 1 map numbers to product\n",
      "atom 7 is achiral & achiral -> match\n",
      "atom 8 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 7 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 7\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 8\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 900 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 2 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [CH3:1][C:2](=[O:3])[O:4][CH2:5][CH2:6][CH2:7][O:8][CH3:900]\n",
      "Reaction SMARTS: [C:1][OH:2]>>[C:1][O:2][C]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fc3cb0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CC(=O)OCCCO\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd0620>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: COCCCOC(C)=O\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd0620>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: COCCCOC(C)=O\n"
     ]
    }
   ],
   "source": [
    "reaction_smarts = '[C:1][OH:2]>>[C:1][O:2][C]'\n",
    "reactant_smiles = 'CC(=O)OCCCO'\n",
    "def show_outcomes(reaction_smarts, reactant_smiles):\n",
    "    \n",
    "    # normal version\n",
    "    outcomes_rdkit_mol = AllChem.ReactionFromSmarts(reaction_smarts).RunReactants((Chem.MolFromSmiles(reactant_smiles),))\n",
    "    outcomes_rdkit = set()\n",
    "    for outcome in outcomes_rdkit_mol:\n",
    "        outcomes_rdkit.add('.'.join(sorted([Chem.MolToSmiles(x) for x in outcome])))\n",
    "    # rdchiral version\n",
    "    outcomes_rdchiral = rdchiralRunText(reaction_smarts, reactant_smiles)\n",
    "    \n",
    "    print('Reaction SMARTS: {}'.format(reaction_smarts))\n",
    "    display(Chem.MolFromSmiles(reactant_smiles))\n",
    "    print('Input SMILES: {}'.format(reactant_smiles))\n",
    "    \n",
    "    if outcomes_rdkit:\n",
    "        display(Chem.MolFromSmiles('.'.join(outcomes_rdkit)))\n",
    "    print('{:1d} RDKit outcomes: {}'.format(len(outcomes_rdkit),'.'.join(outcomes_rdkit)))\n",
    "    \n",
    "    if outcomes_rdkit:\n",
    "        display(Chem.MolFromSmiles('.'.join(outcomes_rdchiral)))\n",
    "    print('{:1d} RDChiral outcomes: {}'.format(len(outcomes_rdchiral),'.'.join(outcomes_rdchiral)))\n",
    "    \n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Testing rdchiral and template extraction\n",
    "\n",
    "This notebook looks at the performance of rdchiral in a number of cases where chirality is tricky to handle. There are many complications due to the many ways to write the same molecule."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Num unique? 1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119f9ef30>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "mols = [Chem.MolFromSmiles(x) for x in [\n",
    "    'F[C@H](Br)Cl',\n",
    "    'F[C@@H](Cl)Br',\n",
    "    'Br[C@@H](F)Cl',\n",
    "    'Br[C@H](Cl)F',\n",
    "    'Cl[C@H](F)Br',\n",
    "    'Cl[C@@H](Br)F'\n",
    "]]\n",
    "\n",
    "print('Num unique? {}'.format(len(set([Chem.MolToSmiles(mol, True) for mol in mols]))))\n",
    "display(mols[0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Num unique? 1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fc3c10>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "mols = [Chem.MolFromSmiles(x) for x in [\n",
    "    'F/C(Br)=C(/Cl)I',\n",
    "    'F/C(Br)=C(Cl)\\\\I',\n",
    "    'FC(/Br)=C(/Cl)I',\n",
    "    'F\\\\C(Br)=C(\\\\Cl)I',\n",
    "    'BrC(/F)=C(\\\\Cl)I',\n",
    "    'BrC(/F)=C(Cl)/I',\n",
    "]]\n",
    "\n",
    "print('Num unique? {}'.format(len(set([Chem.MolToSmiles(mol, True) for mol in mols]))))\n",
    "display(mols[0])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Testing achiral transformations with achiral molecules\n",
    "\n",
    "If our template is achiral and our molecule is too, we should get the same results as using the standard RDKit RunReactants"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['CCOC(=O)[CH2:4][CH2:5][CH2:6][CH2:7][CH2:8][CH3:9]']\n",
      "Added 2 map numbers to product\n",
      "atom 2 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 1 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 2 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 2\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 1\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 900 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 901 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 9 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [O:1]([C:2](=[O:3])[CH2:4][CH2:5][CH2:6][CH2:7][CH2:8][CH3:9])[CH2:900][CH3:901]\n",
      "Reaction SMARTS: [C:1](=[O:3])[OH:2]>>[C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd0c60>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)CCCCCC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd0b20>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCCCCC(=O)OCC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd0b20>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCCCCC(=O)OCC\n"
     ]
    }
   ],
   "source": [
    "# Preparing a carboxylic acid from hydrolysis of an ethyl ester\n",
    "reaction_smarts = '[C:1](=[O:3])[OH:2]>>[C:1](=[O:3])[O:2]CC'\n",
    "reactant_smiles = 'OC(=O)CCCCCC'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Testing achiral transformations with chiral molecules (not in template)\n",
    "\n",
    "When applying a transformation expecting an achiral reaction center to a molecule with specified chirality that does not overlap with the template, we should always preserve that chirality exactly. Even if the CIP priority of a branch from a tetrahedral center changes, the orientation stay the same."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['CCOC(=O)[CH2:4][CH2:5][CH2:6][CH2:7][CH:8]([Cl:9])[CH3:10]']\n",
      "Added 2 map numbers to product\n",
      "atom 2 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 1 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 2 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 2\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 1\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 900 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 901 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 outside of template, copy chirality from reactants\n",
      "For mapnum 8, copying src CHI_TETRAHEDRAL_CCW chirality tag to new\n",
      "[7, 9, 10, -1]\n",
      "[7, 9, 10, -1]\n",
      "CHI_TETRAHEDRAL_CCW\n",
      "CHI_TETRAHEDRAL_CCW\n",
      "1\n",
      "1\n",
      "mapnum 8 chiral match? True\n",
      "New chiral tag CHI_TETRAHEDRAL_CCW\n",
      "Atom 9 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 10 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [O:1]([C:2](=[O:3])[CH2:4][CH2:5][CH2:6][CH2:7][C@H:8]([Cl:9])[CH3:10])[CH2:900][CH3:901]\n",
      "Reaction SMARTS: [C:1](=[O:3])[OH:2]>>[C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd07b0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)CCCC[C@H](Cl)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd07b0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCOC(=O)CCCC[C@@H](C)Cl\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd07b0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCOC(=O)CCCC[C@@H](C)Cl\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['CCOC(=O)[CH2:4][CH2:5][CH2:6][CH2:7][CH:8]([Cl:9])[CH3:10]']\n",
      "Added 2 map numbers to product\n",
      "atom 2 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 1 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 2 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 2\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 1\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 900 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 901 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 outside of template, copy chirality from reactants\n",
      "For mapnum 8, copying src CHI_TETRAHEDRAL_CW chirality tag to new\n",
      "[7, 9, 10, -1]\n",
      "[7, 9, 10, -1]\n",
      "CHI_TETRAHEDRAL_CW\n",
      "CHI_TETRAHEDRAL_CW\n",
      "1\n",
      "1\n",
      "mapnum 8 chiral match? True\n",
      "New chiral tag CHI_TETRAHEDRAL_CW\n",
      "Atom 9 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 10 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [O:1]([C:2](=[O:3])[CH2:4][CH2:5][CH2:6][CH2:7][C@@H:8]([Cl:9])[CH3:10])[CH2:900][CH3:901]\n",
      "Reaction SMARTS: [C:1](=[O:3])[OH:2]>>[C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd0bc0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)CCCC[C@@H](Cl)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd0bc0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCOC(=O)CCCC[C@H](C)Cl\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd0bc0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCOC(=O)CCCC[C@H](C)Cl\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['CCOC(=O)[CH2:4][CH:5]([CH2:6][C:7](=[O:8])[O:9][CH3:10])[CH3:11]']\n",
      "Added 2 map numbers to product\n",
      "atom 2 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 1 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 2 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 2\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 1\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 900 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 901 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "For mapnum 5, copying src CHI_TETRAHEDRAL_CCW chirality tag to new\n",
      "[4, 6, 11, -1]\n",
      "[4, 6, 11, -1]\n",
      "CHI_TETRAHEDRAL_CCW\n",
      "CHI_TETRAHEDRAL_CCW\n",
      "1\n",
      "1\n",
      "mapnum 5 chiral match? True\n",
      "New chiral tag CHI_TETRAHEDRAL_CCW\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 11 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 9 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 10 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [O:1]([C:2](=[O:3])[CH2:4][C@H:5]([CH2:6][C:7](=[O:8])[O:9][CH3:10])[CH3:11])[CH2:900][CH3:901]\n",
      "Reaction SMARTS: [C:1](=[O:3])[OH:2]>>[C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119f8de40>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)C[C@H](CC(=O)OC)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119f8de40>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCOC(=O)C[C@@H](C)CC(=O)OC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119f8de40>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCOC(=O)C[C@@H](C)CC(=O)OC\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['CCOC(=O)[CH2:4][CH:5]([CH2:6][C:7](=[O:8])[O:9][CH2:10][CH2:11][CH3:12])[CH3:13]']\n",
      "Added 2 map numbers to product\n",
      "atom 2 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 1 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 2 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 2\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 1\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 900 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 901 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "For mapnum 5, copying src CHI_TETRAHEDRAL_CCW chirality tag to new\n",
      "[4, 6, 13, -1]\n",
      "[4, 6, 13, -1]\n",
      "CHI_TETRAHEDRAL_CCW\n",
      "CHI_TETRAHEDRAL_CCW\n",
      "1\n",
      "1\n",
      "mapnum 5 chiral match? True\n",
      "New chiral tag CHI_TETRAHEDRAL_CCW\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 13 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 9 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 10 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 11 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 12 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [O:1]([C:2](=[O:3])[CH2:4][C@H:5]([CH2:6][C:7](=[O:8])[O:9][CH2:10][CH2:11][CH3:12])[CH3:13])[CH2:900][CH3:901]\n",
      "Reaction SMARTS: [C:1](=[O:3])[OH:2]>>[C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119f8de40>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)C[C@H](CC(=O)OCCC)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119f8de40>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCOC(=O)C[C@H](C)CC(=O)OCC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119f8de40>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCOC(=O)C[C@H](C)CC(=O)OCC\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "6 = 7\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['CCOC(=O)[CH2:4][CH2:5][CH:6]=[C:7]([F:8])[CH3:9]']\n",
      "Added 2 map numbers to product\n",
      "atom 2 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 1 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 2 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 2\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 1\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 900 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 901 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 9 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [O:1]([C:2](=[O:3])[CH2:4][CH2:5][CH:6]=[C:7]([F:8])[CH3:9])[CH2:900][CH3:901]\n",
      "Looking at outcome bond 6=7\n",
      "Restoring cis/trans character of bond 6=7 from reactants\n",
      "Tried to copy bond direction b/w 5 and 6\n",
      "Tried to copy bond direction b/w 7 and 9\n",
      "Reaction SMARTS: [C:1](=[O:3])[OH:2]>>[C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fd0bc0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)CC/C=C(F)\\C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fef990>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCOC(=O)CC/C=C(\\C)F\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fef990>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCOC(=O)CC/C=C(\\C)F\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "6 = 7\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['CCOC(=O)[CH2:4][CH2:5][CH:6]=[C:7]([F:8])[CH3:9]']\n",
      "Added 2 map numbers to product\n",
      "atom 2 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 1 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 2 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 2\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 1\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 900 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 901 created by product template, should have right chirality\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 9 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [O:1]([C:2](=[O:3])[CH2:4][CH2:5][CH:6]=[C:7]([F:8])[CH3:9])[CH2:900][CH3:901]\n",
      "Looking at outcome bond 6=7\n",
      "Restoring cis/trans character of bond 6=7 from reactants\n",
      "Tried to copy bond direction b/w 5 and 6\n",
      "Tried to copy bond direction b/w 7 and 9\n",
      "Reaction SMARTS: [C:1](=[O:3])[OH:2]>>[C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fefe90>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)CC/C=C(F)/C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fefcb0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCOC(=O)CC/C=C(/C)F\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fefcb0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCOC(=O)CC/C=C(/C)F\n"
     ]
    }
   ],
   "source": [
    "# Preparing a carboxylic acid from hydrolysis of an ethyl ester\n",
    "reaction_smarts = '[C:1](=[O:3])[OH:2]>>[C:1](=[O:3])[O:2]CC'\n",
    "reactant_smiles = 'OC(=O)CCCC[C@H](Cl)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'OC(=O)CCCC[C@@H](Cl)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'OC(=O)C[C@H](CC(=O)OC)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'OC(=O)C[C@H](CC(=O)OCCC)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'OC(=O)CC/C=C(F)\\C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'OC(=O)CC/C=C(F)/C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Testing achiral transformations with chiral molecules (partially in template, but auxiliary)\n",
    "\n",
    "When applying a transformation expecting an achiral reaction center to a molecule with specified chirality, we do _not_ want a match *unless* it would be impossible for the template to have specified chirality. For example, a tetrahedral center in a molecule matches part of a template, but that template does not contain all of that atom's neighbors. It would be impossible for the template to constrain the chirality, and thus we are okay matching. That tetrahedral center should be preserved."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [C:4][C:1](=[O:3])[OH:2]>>[C:4][C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c338a0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)[C@H](Cl)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c33850>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCOC(=O)[C@@H](C)Cl\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c33850>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCOC(=O)[C@@H](C)Cl\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [C:4][C:1](=[O:3])[OH:2]>>[C:4][C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c33850>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)[C@@H](Cl)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c43940>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCOC(=O)[C@H](C)Cl\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c43940>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCOC(=O)[C@H](C)Cl\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [C:4][C:1](=[O:3])[OH:2]>>[C:4][C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c43940>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)[C@@H](C(=O)OC)C\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAAfK0lEQVR4nO3deVxU1d8H8M8wMIzAyFZmpmSyI0b60zBNcEMrMx5zK38uJBoiuPBTZBVFM9C0JyVTy9xKQ/zlUtpjSqZhlstPQQJEh0BUekT2bZj1Pn+MT6XNJAPDPTPwfb98zWte9x6HjxRfzr3n3HMEHMeBEEJIa1mwDkAIIeaNyighhLQJlVFCCGkTKqOEENImVEYJIaRNqIwSQh62b9++goIC1inMhoAmPBFjKirCxYsoKkKfPvDzg6cnhELWmYhhysrK3N3dFQqFVCp9+umnWccxA5asA5COoqICwcE4d+6Bg76+OHQIbm6MMpHWSE5Obmpqmjx5MtXQFqLeKDGGW7cwciSkUgQGIiICHh4oKcGuXTh8GPb2OHkSgwaxjkha5MaNG3379tVoNLm5ud7e3qzjmAe6N0qMYeVKSKWYMwenTmHyZPj5ITgYhw4hNha1tYiJYZ2PtFRiYqJSqQwNDaUa2nLUGyVtVl6Onj0hkUAqhaPjA6eam+HpidJSXLsGT09G+UhL5eTkDBgwQCQSXb9+vVevXqzjmA3qjZI2++UXKJUICnq4hgIQi/HSSwBQWMh/LmKo6OhojUazaNEiqqEGoTJK2uzXXwGgTx/dZ7XHS0v5y0Na5cyZMydPnnRwcFi2bBnrLGaGyqgBlEol6wgmSTulyVLPrI+6OgBwcuIvDzEcx3GxsbEAYmJinOg/loGojLZIY2NjVFRUQECAWq1mncX0uLsDgFSq+2x+PgC4uvKXhxjuyy+//Pnnn5988smFCxeyzmJ+qIy2iEAgOHLkyM8///zRRx+xzmIyKiruv/H2hkiEr79GZeXDbcrKcOwYnJzg68tzOtJyarU6KSkJQFJSko2NDes45ofKaIvY2Nhs3rwZQEJCwu3bt1nHMQFqNQICMGIEfvsNzs4IC0NDA8LDIZP90UYmw9y5UCqxdClsbdllJY+wc+fOgoICd3f30NBQ1lnMEk14MsDEiRMPHjw4ceLEf//736yzsLZ9O+bOxTPP4No1iEQoL8fQoZBK4euLCRPQpw9KSnDkCLKzMXYsDh4E9XFMVXNzs4eHx61bt9LT06dOnco6jnniSIuVlZXZ29sDOHLkCOssTMlkXK9eHMClp/9xsK6OmzmTs7TkgPt/JBIuJoZTqdgFJY+2bt06AH5+fmq1mnUWc0W9UcNs2rRp0aJFLi4ueXl5dnZ2rOMw8t57WLYMfn64fBkWD94XksuRl4ebN+HtDQ+Ph88SE1NbW+vq6lpZWfntt9+OGTOGdRxzRf+XGyYyMnLw4MGlpaXJycmsszBSW4u1awFg7VodVdLaGgMGwMoKvXpRDTV969atq6ysDAgIoBraFtQbNdjVq1f/8Y9/ALhw4UL//v1Zx+FdQgLefRcBAThzRneDwkL4+qJ7d1y/ji5d+A1HDFBeXu7m5lZfX3/u3LkXXniBdRwzRv0Fgz377LORkZEqlSosLKzTTSMtL0daGgCkpuptk5AAlQrjx1MNNXHJycn19fWvv/461dA2ot5oazQ2Nvr6+paUlGzevHn+/Pms4/AoIgIffYTXX8eXX+pucPEi/P0hFuP6dfTsyW84YoDi4mIvLy+1Wn316lUfHx/Wccwb9UZbw9bWVjuNNC4u7s6dO6zj8KW4GNu3QyjE6tV628TFgeMQFUU11MQlJCQoFIqQkBCqoUbAeKaAOQsODgYwZcoU1kH48uabHMCFhupt8O23HMA5OnKVlTzGIgbLycmxsLAQi8U3b95knaUjoN5o66WlpUkkkoyMjKNHj7LO0v6uXsX+/RCLkZSkuwHHIT4eAOLiaCESExcTE6PRaCIjI11cXFhn6QiojLZer169tNOeIiMjGxsbWcdpZzEx0GgQGQl9P3gZGfjPf9CjByIi+E1GDJOVlXX8+HF7e3vtkk6k7aiMtsnChQsHDBhw8+bN1X9zu7ADyMrC8eOwt4e+HzyVCitXAkByMj33aeK01TM6OtrZ2Zl1lg6CRurb6tKlS4MHDxYIBBcvXnzuuedYx2kfQ4fi3Dm88w4SEnQ32LoV4eHw8EBent6FR4kJOHz48IQJE7p16yaVSiUSCes4HQT1Rttq4MCBERER2mmkGo2GdZx2cPgwzp1Dt27QtxKlTIY1awDg3XephpoytVqdmJgIICkpiWqoEVEZNYLVq1c/9dRTNeXlZXv2sM5ibGo1EhMBICkJ+n7wNm7E7dsYOBCvv85nNGKoPXv25OXlPfPMM3PnzmWdpUOhi3rjyDt2zG3SJGuxGAUF6N6ddRzj2bkTs2f/sSDeX9XUwNUVVVXIzMSoUbznIy2lUCi8vLyKi4v37t07bdo01nE6FOqNGkffceOsx4xBTQ2iolhnMR6F4v5M+3fe0V1DAaSkoKoKQUFUQ03chx9+WFxc3K9fvzfeeIN1lo6GeqPGU1qKvn3R0ICjRzFuHOs0RrA9La33wYPDFQrLrCzdyzWVlcHdHTIZfvoJ/v68ByQt1dDQ4OrqWl5e/s0337z88sus43Q01Bs1HhcXrFgBABERMP9ppHV1dXGrVgWdPn0iIUHvknfJyWhqwuTJVENN3Lp168rLy4cNG0Y1tF0wfoqqg1Equf79OYCLi2Mdpa2WL18OYNiwYXpbFBZyVlacUMjl5/OYixisvLxcOy7/448/ss7SMVFv1KgsLbFtG4RCvPcecnJYp2m9e/fuffDBBwBS/2ZBvMREKJWYMwfe3vwlI4ZbvXp1fX19cHDwkCFDWGfpoFjX8Y4oIoIDOH9/zmw3t1mwYAGA4OBgfQ1kly9zAgHXpQt3+zafwYihiouLra2thULhL7/8wjpLh0VDTO2grg4+PrhzB9u24e23WacxWElJiZeXl0qlysnJ6du3r842Y8aM8a+uXhwc7KydVUpM1YwZMz7//POQkJCdO3eyztJxsa7jHdT+/RzA2dtzd+6wjmKw6dOnAwgJCdHX4PTp0wAcHBwqaUE803b16lULCwuRSFRUVMQ6S0dG90bbx5QpGD8etbWIjmYdxTC5ubn79u0TiUTaIaa/4jhOu7ZFbGysEy2IZ9ri4uI0Gk1ERESfPn1YZ+nQWNfxjuvmTc7OjgO4Y8dYRzHAuHHjAERFRelrkJGRAeDJJ59sbGzkMxgxVFZWFgA7O7u7d++yztLBUW+03bi4QNuhM59ppGfPnj127JidnZ2+lSjVavWKFSsArFixwoYWxDNt2lVIoqOju3XrxjpLR8e6jndoSiX33HMcwCUksI7SIoGBgQCSk5P1Nfj4448BuLu7KxQKPoMRQ3311VcAHn/88bq6OtZZOj4qo+3s/HnOwoITibi8PNZRHuGRP3gymaxXr14A9u/fz3M2YhC1Wu3n5wdg48aNrLN0CnRR386efx5vvw2FAmFhMOG5ZRqNRjumlJiYqG8lyk2bNt26dcvPz2/SpEn8pjM9RUVIT8eaNfjiC+TnQ61mHegBn3/+eU5OTu/evcPCwlhn6RxY1/FOoLaW69GDA7hPPmEdRa/du3cD6N27d3Nzs84G1dXV2j0nTpw4wXM203LvHjdkCAc88MfXl7txg3Wy++RyuXZcfs+ePayzdBZURnmRns4BnJMTV13NOooOLfnBi4uLAxAYGMhjLtNTWsq5uXEAFxjIZWRw2dnc4cPcf/3X/TnCFy6wzsdxHKd9itfX11dttg/RmR16iokvoaF49VVMmMA6hw4bN25cvHixr6+vdvvyvzb47bff3N3dm5qazp07N3jwYP4TmorQUOzYgTlzsG3bA6texcUhNRUjRuDUqdZ/eEMDlEquvr5Ypaqrq1Or1bW1tRqNpqamhuM47Wt1dbX2vUajqa2tVavVdXV1KpWqvr5e+6pUKktKSurq6r766qvx48e3/V9MWoLKaGfX0NDg5uZ29+7dr7/++tVXX9XZJjw8fOvWrZMmTTpw4ADP8UxIeTl69oREAqkUjo4PnGpuhqcnSktx7RquXEFlJRoaoFCgsfH+q1yOpiY0N0Mmg0yG5mY0Nd0/KJffb6YlFAradqfV3d09JiYmNDS0LR9CDEIbkHV2GzZsuHv37tChQ/XV0OLi4h07dgiFwlWrVvGczbT88guUSgQFPVxDAYjFeOklfPwxCguxejXy81vz+ba2EIlgZ+ctFotsbCwtLSUSiaWlZdeuXYVCob29vYWFhYODg0AgcHR0FAgE2vcODg4WFhb29vZCobBr166WlpaOjo4uLi5t/+eSlqMyykJRES5eRFER+vSBnx88PSEUssqSn58PICUlRV+DuLg4hUIxZ84c706+IN6vvwKAvqcqtcdLS/HmmygrQ9eusLSERAIrK9jZQSSCrS2srWFjA7EYXbrcf9W+sbGBtfXvn9SqGkxYojLKr4oKBAfj3LkHDvr64tAhuLkxSbR///6EhIRnn31W59mcnJwDBw6IxeKkpCSeg5kc7a86fTtI19UBgJMTIiP5i0RMA5VRHt26hZEjIZUiMBAREfDwQEkJdu3C4cMYOBAnT2LQIKN8nT8PTTw0KPHXoQmlUtnQ0KBQKBobG+VyeUxMTL9+/X6fOhoTE6PRaBYsWKCdeN+pubsDgFSq+6z2Qt7Vlb88xGTQEBOPHjnO+8UXyM2FSoX6eiiVfwxT6Bug0A5NNDRAqUR9PVSqo35+40+fbkvGp59+OjAwUDuN9IcffggMDLS3ty8qKtJOGu3UKivRowdEIpSU4KHvRlkZeveGRILSUtjaMspHmKEyypeWjPOuW4dly9ryRb4fPnzk6dM6ByUA/D408dCghEQisbKysrOzq66ujoqKampqyszMHDVq1JAhQ3766ac1a9bEx8e3JVXHsXAh0tIweTJ270aXLvcPymSYNAnffIN330VcHNN8hA26qOdLS8Z5FQqMHg2h8NEDFH8emvj/EV5YWY2QSDh9N+9a5t69e4mJieHh4ZcuXQoKCqqoqFi0aFFbPrBDSUzE//wPDhxAQQEmTECfPigpwZEjyM7G2LGgb1SnxWzif2fzySd/t2NoaioHcGlp/GbSQS6X+/j4AFixYgXHcSqVinUiE1NXx82cyVla/vEkqETCxcRw9I3qxGhpEr60cJyXNZFItG3bNoFAkJKSUlBQIGQ3E8sUxcZiyRKkpKChAf/5Dw4eREEBamqQmspwyhphjsooX8xnnPfFF18MDQ1VKBTz5s3j6Nb57+7cwaZN2L4dd+/C2hoDBmDCBHh5Qdfjs6RToSEmvpjVOG9VVZW3t3d5efmuXbtmzZrFOo5p0E60mDYNe/eyjkJMC/0i5YuzM8LC0NCA8HDIZH8cl8kwdy6USixdaiI1FICTk9P69esBLFmy5N69e6zjmIDCQuzZAysrJCezjkJMDvVGeVRejqFDIZXC11fHOO/BgzCx3Y2CgoIyMzPfeuutHTt2sM7C2uuv49AhRETgww9ZRyEmh8oov+rrERmJffugUt0/IpFg/nysWWOCYxRSqbRfv35yuTwzM3PkyJGs47Bz8SL8/WFjA6kU3buzTkNMDpVRFuRy5OXh5k14e8PDw5THKFavXp2UlOTh4ZGTkyMWi1nHYWTUKJw6hcRErF7NOgoxRVRGyd9RKBT9+/fPz89PTk7upKuTHD+Ol1+GoyOKinQ8OkEIlVHySFlZWYGBgSKRKDs728vLi3UcfnEcBg7E5ctYvx5LlrBOQ0yU6V5OEhMxbNiwkJAQuVzeGaeRpqfj8mU89RTmz2cdhZgu6o2SR/t9GumePXtmzJjBOg5flEr4+EAqxaefYvZs1mmI6aLeKHk0JyendevWAYiKiqqoqGAdhy/bt0MqhacnZs5kHYWYNCqjpEVmzZo1atSoysrK2NhY1ll4IZNhzRoAePddvSshEAKAyihpuS1btojF4h07dnz//fess7S///5v3LmDQYNMc09sYlKojJKW0u7cy3FceHi4XC5nHac9VVdj/XoASE2FQMA6DTF1VEaJAeLj4729vQsLC7VP3HdYKSmorsbYsejMz26RFqORemKYH374Yfjw4SKRKCcnx9PTk3WcdlBWBnd3yGS4dAkDBrBOQ8wA9UaJYQICAmbOnNmRp5GuWIGmJkydSjWUtBCVUWKwDRs2PP7446dPn963bx/rLEZWeO3a7uvX1dbWWLWKdRZiNqiMEoM5OzuvXbsWwOLFizvYNNLE5ctDfvhh9YIF93crIKQF6N4oaQ2O40aPHn3q1Km3335727ZtrOMYx6VLl55//nmxWHz9+vWePXuyjkPMBvVGSWsIBALtNNJPPvnk7NmzrOMYR2xsLMdxixcvphpKDEJllLSSh4fHsmXLOI6bN2+eUqlkHaetTpw48d133zk4OCxdupR1FmJmqIyS1ouPj/fy8srLyzP3aaQcx2lXU42Li3MygW2uiXmhe6OkTc6cOTNixAixWJybm+tqGhtEt0JGRsbUqVN79Ohx48YNGxPbEYuYPuqNkjYJDAycPn26TCabb7YrcqrV6hUrVgBYuXIl1VDSCtQbJW1VWVnp5eVVUVHxxRdfvPHGG6zjGGzbtm3z5s3z8PDIy8uzpMWciOGojBIj+PTTT+fMmfPEE08UFBQ4mtWGRTKZzMPD4/bt2wcOHJg0aRLrOMQs0UU9MYLZs2ePGDHi7t278fHxrLMYZuPGjbdv3x44cODEiRNZZyHminqjxDgKCwv9/PyUSmVWVtaQIUNYx2mRmpoaV1fXqqqqkydPjh49mnUcYq6oN0qMw9PTc+nSpRqNJiwszFymkaamplZVVQ0fPpxqKGkL6o0So5HL5X5+foWFhampqTExMazjPMJvv/3m5uYmk8l++uknf39/1nGIGaPeKDEaa2vrrVu3CgSC5OTkX3/9lXWcR0hOTm5qapo0aRLVUNJG1BslRjZ9+vS9e/eOHTv2+PHjrLPodePGjb59+2o0mtzcXG9vb9ZxiHmj3igxsg8++OCxxx779ttvMzIyWGfRKzExUalUhoaGdu/efdGiRatodVHSBtQbJcb38ccfh4WFde/evaCgwMHBgXWch+Xk5AwYMEAkEl2/fv3mzZsBAQFWVlbZ2dnULSWtQ2WUGB/HcQEBAWfPnp0/f/7mzZuN+MkNDQ1KpbK+vl6lUmlf6+rq1Gp1bW2tRqOpqanhOK66uprjOO37mpoajUZTW1urVqvr6uq0f6u4uLiqqio6OnrdunUA5s6du3379oCAgNOnTwtoH1BiOCqjpF3k5eUNGDBApVLt37//mWee0dayv1Y0pVLZ0NCgUCgaGxvlcnlTU1Nzc7NMJtO+at80NTXJ5fLGxkaFQmGseJs2bfrnP/+pXcypqqrK29u7vLx8165ds2bNMtaXIJ0HlVHSXuLj499//33j7mhvY2NjbW1ta2srEons7OysrKwkEomlpWXXrl2FQqG9vb2FhYWDg4NAINC+Ojo6at9bWFjY29sLhcKuXbtaWlr6+voKhcLfP/azzz6bOXOms7NzQUHB448/bsTApDOgMkrai0wmu3r16rRp07RP2euraBKJxMrKSlsT7ezsRCKRra2ttbW1jY2NWCzu0qVLly5dxGKxtoC2OkxFRcWWLVsSEhIsLHQPqwYFBWVmZr711ls7duxo9VchnROVUdLxcRzXv3//nJycLVu2zJs3T2cbqVTar18/uVyemZk5cuRInhMSs0YTnkjHJxAIEhMTAcTExJSVlels4+bmFh8fz3FceHh4c3MzvwGJeaMyStpFXl4e6wgPmDRp0muvvVZXV7dkyRJ9bWJiYnx8fK5fv64dwSekheiinhifXC4fM2bM0aNHJRIJ6yx/KC0t7du3b0NDw9GjR8eNG6ezTVZWVmBgoEgkys7O9vLy4jkhMVPUGyXGZ21tfebMGZOqoQBcXFy0m4VEREQ0NjbqbDNs2LCQkBC5XD5v3jzqYZAWojJKOpHFixf379//5s2ba9as0ddm/fr13bp1O3PmzOeff85nNmK+6KKeGFNTU5OJ7wp38eLFF154QSAQXLp0yc/PT2eb3bt3h4SEODs7X7t27bHHHuM5ITE71BslxhQcHPzmm29WVlayDqLXoEGDwsLCVCpVWFiYRqPR2WbWrFmjRo2qrKyMjY3lOR4xR1RGiTEdPnzY39/f1O6KPiQlJeWpp546f/789u3b9bXZsmWLWCzesWPH999/z2c2Yo7oop50RhkZGVOnTrW3t8/Pz+/Ro4fONitXrkxOTvb09MzJyWnLA1Skw6PeKOmMpkyZMn78+Nra2ujoaH1t4uPjvb29CwsL169fz2c2YnaojBIjSEpKWrx48b1791gHMcCHH35oa2u7b9++b775RmcDkUj00UcfCQSCGxkZGqmU53jEjFAZJUYQGRnJcZy3t3dBQQHrLC3l4uKyfPly/O000uHDh1+OidmVn28xfz6/6Yg5oXujxGhu3brVs2dPM1r5WKVSDRo0KDs7OyEh4Z133tHdqLIS3t64dw9792LaNH4DEvNAZZR0ahcuXHjhhRcsLS2vXLni4+Oju9HOnZg9G088gYICODryG5CYAbqoJ6139uzZlJSUpqYm1kFa7/nnn3/77bcVCkVYWJjeLkVICEaOxN27iIvjNx0xD1RGSes9+eSTOTk5Hh4eW7duVSqVrOO0UkpKSvfu3c+ePXt4zx7dLQQCbNkCsRiffIIff+Q3HTEDVEZJ67m6uqanp3/11VeHDx++cOEC6zit5ODgsGXTpsuBgROio1FerruRhweWLYNGg7AwmO0vDNJO6N4oIQCAV1/FsWOYMQP6+qRyOZ57DteuISUF9JAo+RPqjRKDNTY27tmzR61Wsw5iVJs3w9YWn32GzEzdDaytsXUrBAKsWoWiIn7DEZNGZZQYrLKycufOnf369Tt06FDHuZp5+mkkJABAeDj0bSISGIjp0yGTISKCz2jExNFFPWml48ePx8fHi0SirVu3Pvfcc6zjGINKhYEDkZOD5cuxapXuNpWV8PJCRQXS0zF1Kr/5iImiMkpaT6PRZGRk9O/f39PTk3UWIzl/HkOGwNISV65A3zTSTz/FnDno3h35+TSNlIDKKDHIlStX+vfvzzpFOwsLw8cfY9gwnDkDnU9kcRxGjcL33yM8HB99xHs+YnKojJKWkslk/v7+Dg4OqampQ4YMYR2n3dTWwscHZWX49FPMnq27TWEh/PygVCIrCx34W0FahoaYSEt16dIlOzt7wYIFM2bMCAoKys7OZp2ofdjb4733AOBvppF6emLpUmg0mDePppESKqPEABYWFpMnT87Pzx83btxLL720R98US3M3bRpeeQVVVVi2TG+b5cvh6YncXHzwAY/JiCmii3ryaPX19X/dF6S+vl6lUjl21DGWkhL4+qKxEZmZGDVKd5vTpzFyJLp0QW4u+vThNx8xIdQbJY8WHBw8efLkwsLCPx+USCQdtoYC6N37/kIkfzONdPhwvPkmmpqwcCGf0YipoTJKHu348eNBQUHDhw+fMmVKSUkJ6zh8iY6Gjw9u3EBqqt4277+P559HVBSPsYjJoYt60lINDQ2bN29+7733Jk6cuHr16m7durFO1P7OnkVAAKyskJ0Nb2/WaYiJot4oaSk7O7uYmJjc3FyhULh7927WcXjx4osIDYVCgXnzQB0Oogf1RolesbGxDQ0NiYmJ3bt3Z52FnaoqeHujvBy7dmHWLNZpiCmi3ijRa9myZXZ2dr6+vrGxsTU1NazjMOLkhA0bAGDJEpjV1qeEN1RGiV5OTk6pqanZ2dnV1dWenp5r166VyWSsQ7EwfTpGj4azM/73fx8+VVSE9HSsWYMvvkB+PjrY4oGkZeiinrRIQUFBQkLCpUuXNmzYMHnyZNZxeHf3LhwcYG39x5GKCgQH49y5B5r5+uLQIbi58ZyOsEVllDzsu+++O3fuXFRUlJ2d3UOnzp8/X1lZ+corrzAJZkJu3cLIkZBKERiIiAh4eKCkBLt24fBh2Nvj5EkMGsQ6IuEPXdSTh7m6uhYWFnp4eKSlpSkUij+f8vf3pxoKACtXQirFnDk4dQqTJ8PPD8HBOHQIsbGorUVMDOt8hFfUGyW65efnr1y58vz58wkJCaGhoUKhkHUik1Fejp49IZFAKn14vdHmZnh6orQU166hw6zBSh6FeqNENx8fn4yMjP379+/bt+/ZZ589cOAA60Qm45dfoFQiKEjHms1iMV56CQAefHCWdGxURsl9dXV127dvV6lUfz44ePDg06dPp6SkrFq1au7cuayymZZffwWgdy0S7fHSUv7yENaojJL7ampqMjIy+vbtm5GR8dCtntdeey0nJ2fFihWsspkW7f0NS0vdZ+vqAMDJib88hDUqo+Q+FxeXEydO7NixIy0t7a9X8RYWFj179mSVzbS4uwOAVKr7bH4+ALi68peHsEZDTESHzMzMf/3rX127dk1NTX3xxRdZxzExlZXo0QMiEUpK4Oz8wKmyMvTuDYkEpaWwtWWUj/CNeqNEh9GjR2dnZy9atEi7X0hubi7rRKbE2RlhYWhoQHg4/vxYl0yGuXOhVGLpUqqhnQr1RsnfkclkaWlply9fTk9PZ53FlJSXY+hQSKXw9cWECejTByUlOHIE2dkYOxYHD8LGhnVEwh8qo4S0Sn09IiOxbx9+n9sgkWD+fKxZA5pj28lQGSWkDeRy5OXh5k14e8PDAxZ0l6wzojJKCCFtQr88CSGkTf4P+wWvHpPhuZYAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c43940>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCOC(=O)[C@H](C)C(=O)OC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c43940>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCOC(=O)[C@H](C)C(=O)OC\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [C:4][C:1](=[O:3])[OH:2]>>[C:4][C:1](=[O:3])[O:2]CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c41760>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: OC(=O)[C@H](C(=O)OC)C\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAAfiUlEQVR4nO3de1xUZf4H8M9wGUYugpBmpmgil0GUYDVTV/CGtr9y1cQsM0VBAdHUnyIihJGZZNh6J8zM3DLF8lLar/KyKkbtYi2ogOAgF5FW5H4b5np+fwxbqTPKwHieM/B9v3zNazrzOHw0+Po98zznOSKO40AIIaS9LFgHIIQQ80ZllBBCOoTKKCGEdAiVUUII6RAqo4QQ0iFURgkh9zpw4EBeXh7rFGZDRAueiCkVFiIzE4WFGDgQvr7w9ISlJetMxDjl5eXu7u5KpVImk/Xv3591HDNgxToA6SwqKzF1KjIy7jro44OjRzFoEKNMpD0SExObm5tnzpxJNbSNqBslpnDzJsaPh0yGwEBERcHDA8XF2LcPx47B0RGnTmH4cNYRSZtcv3598ODBWq32ypUrUqmUdRzzQJ+NElN4803IZAgLw9mzmDkTvr6YOhVHj2LNGtTVISaGdT7SVvHx8SqVKjQ0lGpo21E3SjqsogJ9+8LBATIZevS466WWFnh6orQU167B05NRPtJW2dnZ/v7+YrG4oKCgX79+rOOYDepGSYddvQqVCkFB99ZQABIJnnsOAPLz+c9FjBUdHa3VapctW0Y11ChURkmH3bgBAAMH6n9Vd7y0lL88pF3Onz9/6tQpJyen1atXs85iZqiMGkGlUrGOIEi6JU1WBlZ91NcDgLMzf3mI8TiOW7NmDYCYmBhn+p9lJCqjbdLU1LRixYqAgACNRsM6i/C4uwOATKb/1dxcAHBz4y8PMd6XX375008/PfHEE6+//jrrLOaHymibiESi48eP//TTT7t27WKdRTAqK1ufSKUQi/H116iqundMeTlOnoSzM3x8eE5H2k6j0SQkJABISEiwtbVlHcf8UBltE1tb2507dwKIi4srKytjHUcANBoEBGDcOPz6K1xcEB6OxkZERkIu/32MXI6FC6FSYdUq2Nmxy0oe4uOPP87Ly3N3dw8NDWWdxSzRgicjzJgx48iRIzNmzPjiiy9YZ2Ftzx4sXIinnsK1axCLUVGB0aMhk8HHB9OnY+BAFBfj+HFkZWHyZBw5AupxhKqlpcXDw+PmzZsHDx6cNWsW6zjmiSNtVl5e7ujoCOD48eOsszAll3P9+nEAd/Dg7wfr67m5czkrKw5o/eXgwMXEcGo1u6Dk4TZt2gTA19dXo9GwzmKuqBs1zrZt25YtW+bq6pqTk2Nvb886DiPvvYfVq+Hri19+gcXdnwspFMjJQUkJpFJ4eNz7KhGYuro6Nze3qqqq7777btKkSazjmCv6LjfOkiVLnn322dLS0sTERNZZGKmrw7vvAsC77+qpkjY28PeHtTX69aMaKnybNm2qqqoKCAigGtoR1I0a7fLly3/6058A/Otf//Lz82Mdh3dxcXjnHQQE4Px5/QPy8+Hjg969UVCAbt34DUeMUFFRMWjQoIaGhoyMjJEjR7KOY8aoXzDa0KFDlyxZolarw8PDu9wy0ooKbN8OAElJBsfExUGtxpQpVEMFLjExsaGh4cUXX6Qa2kHUjbZHU1OTj49PcXHxzp07Fy9ezDoOj6KisGsXXnwRX36pf0BmJkaMgESCggL07ctvOGKEoqIiLy8vjUZz+fJlb29v1nHMG3Wj7WFnZ6dbRhobG3vr1i3WcfhSVIQ9e2BpifXrDY6JjQXHYcUKqqECFxcXp1QqQ0JCqIaaAOOVAuZs6tSpAF566SXWQfjyyiscwIWGGhzw3XccwPXowVVV8RiLGC07O9vCwkIikZSUlLDO0hlQN9p+27dvd3BwSEtLO3HiBOssj97lyzh0CBIJEhL0D+A4rF0LALGxtBGJwMXExGi12iVLlri6urLO0hlQGW2/fv366ZY9LVmypKmpiXWcRywmBlotliyBoR+8tDT8/DP69EFUFL/JiHHS09O//fZbR0dH3ZZOpOOojHbI66+/7u/vX1JSsv4BHxd2Aunp+PZbODrC0A+eWo033wSAxES67lPgdNUzOjraxcWFdZZOgmbqO+rSpUvPPvusSCTKzMx8+umnWcd5NEaPRkYG3n4bcXH6B3zwASIj4eGBnByDG48SATh27Nj06dN79eolk8kcHBxYx+kkqBvtqGHDhkVFRemWkWq1WtZxHoFjx5CRgV69YGgnSrkcGzYAwDvvUA0VMo1GEx8fDyAhIYFqqAlRGTWB9evXP/nkk7UVFeX797POYmoaDeLjASAhAYZ+8LZuRVkZhg3Diy/yGY0Ya//+/Tk5OU899dTChQtZZ+lU6KTeNHJOnhwUHGwjkSAvD717s45jOh9/jAULft8Q7361tXBzQ3U1Tp/GhAm85yNtpVQqvby8ioqKPvvss9mzZ7OO06lQN2oag59/3mbSJNTWYsUK1llMR6lsXWn/9tv6ayiAjRtRXY2gIKqhArdjx46ioqIhQ4a8/PLLrLN0NtSNmk5pKQYPRmMjTpzA88+zTmMCe7ZvH3DkyFil0io9Xf92TeXlcHeHXI4ff8SIEbwHJG3V2Njo5uZWUVHxzTff/OUvf2Edp7OhbtR0XF2xbh0AREXB/JeR1tfXx771VtC5c9/HxRnc8i4xEc3NmDmTaqjAbdq0qaKiYsyYMVRDHwnGV1F1MioV5+fHAVxsLOsoHfXGG28AGDNmjMER+fmctTVnacnl5vKYixitoqJCNy//ww8/sM7SOVE3alJWVkhNhaUl3nsP2dms07TfnTt3tmzZAiDpARvixcdDpUJYGKRS/pIR461fv76hoWHq1KmjRo1inaWTYl3HO6OoKA7gRozgzPbmNkuXLgUwdepUQwPkv/zCiURct25cWRmfwYixioqKbGxsLC0tr169yjpLp0VTTI9AfT28vXHrFlJTsWgR6zRGKy4u9vLyUqvV2dnZgwcP1jtm0qRJI2pqlk+d6qJbVUqE6rXXXvv0009DQkI+/vhj1lk6L9Z1vJM6dIgDOEdH7tYt1lGMNmfOHAAhISGGBpw7dw6Ak5NTFW2IJ2yXL1+2sLAQi8WFhYWss3Rm9Nnoo/HSS5gyBXV1iI5mHcU4V65cOXDggFgs1k0x3Y/jON3eFmvWrHGmDfGELTY2VqvVRkVFDRw4kHWWTo11He+8Sko4e3sO4E6eZB3FCM8//zyAFStWGBqQlpYG4IknnmhqauIzGDFWeno6AHt7+9u3b7PO0slRN/rIuLpC19CZzzLSixcvnjx50t7e3tBOlBqNZt26dQDWrVtnSxviCZtuF5Lo6OhevXqxztLZsa7jnZpKxT39NAdwcXGso7RJYGAggMTEREMDdu/eDcDd3V2pVPIZjBjrq6++AtCzZ8/6+nrWWTo/KqOP2D//yVlYcGIxl5PDOspDPPQHTy6X9+vXD8ChQ4d4zkaMotFofH19AWzdupV1li6BTuofsWeewaJFUCoRHg4Bry3TarW6OaX4+HhDO1Fu27bt5s2bvr6+wcHB/KYTnsJCHDyIDRvw+efIzYVGwzrQXT799NPs7OwBAwaEh4ezztI1sK7jXUBdHdenDwdwH37IOopBn3zyCYABAwa0tLToHVBTU6O758T333/PczZhuXOHGzWKA+765ePDXb/OOlkrhUKhm5ffv38/6yxdBZVRXhw8yAGcszNXU8M6ih5t+cGLjY0FEBgYyGMu4Skt5QYN4gAuMJBLS+Oysrhjx7hp01rXCP/rX6zzcRzH6a7i9fHx0ZjtRXRmh65i4ktoKF54AdOns86hx9atW5cvX+7j46O7ffn9A3799Vd3d/fm5uaMjIxnn32W/4RCERqKvXsRFobU1Lt2vYqNRVISxo3D2bPtf/PGRqhUXENDkVpdX1+v0Wjq6uq0Wm1tbS3HcbrHmpoa3XOtVltXV6fRaOrr69VqdUNDg+5RpVIVFxfX19d/9dVXU6ZM6fifmLQFldGurrGxcdCgQbdv3/76669feOEFvWMiIyM/+OCD4ODgw4cP8xxPQCoq0LcvHBwgk6FHj7teammBpydKS3HtGv79b1RVobERSiWamlofFQo0N6OlBXI55HK0tKC5ufWgQtE6TMfSUtSxT1rd3d1jYmJCQ0M78ibEKHQDsq5u8+bNt2/fHj16tKEaWlRUtHfvXktLy7feeovnbMJy9SpUKgQF3VtDAUgkeO457N6N/HysX4/c3Pa8v50dxGLY20slErGtrZWVlYODg5WVVffu3S0tLR0dHS0sLJycnEQiUY8ePUQike65k5OThYWFo6OjpaVl9+7draysevTo4erq2vE/Lmk7KqMsFBYiMxOFhRg4EL6+8PSEpSWrLLm5uQA2btxoaEBsbKxSqQwLC5N28Q3xbtwAAENXVeqOl5bilVdQXo7u3WFlBQcHWFvD3h5iMezsYGMDW1tIJOjWrfVR98TWFjY2v71Tu2owYYnKKL8qKzF1KjIy7jro44OjRzFoEJNEhw4diouLGzp0qN5Xs7OzDx8+LJFIEhISeA4mOLp/6gzdQbq+HgCcnbFkCX+RiDBQGeXRzZsYPx4yGQIDERUFDw8UF2PfPhw7hmHDcOoUhg83ydf549TEPZMS909NqFSqxsZGpVLZ1NSkUChiYmKGDBny29LRmJgYrVa7dOlS3cL7Ls3dHQBkMv2v6k7k3dz4y0MEg6aYePTQed7PP8eVK1Cr0dAAler3aQpDExS6qYnGRqhUaGiAWn3C13fKuXMdydi/f//AwEDdMtILFy4EBgY6OjoWFhbqFo12aVVV6NMHYjGKi3HP30Z5OQYMgIMDSkthZ8coH2GGyihf2jLPu2kTVq/uyBf5x9ix48+d0zspAeC3qYl7JiUcHBysra3t7e1rampWrFjR3Nx8+vTpCRMmjBo16scff9ywYcPatWs7kqrzeP11bN+OmTPxySfo1q31oFyO4GB88w3eeQexsUzzETbopJ4vbZnnVSoxcSIsLR8+QfHHqYn/zvDC2nqcgwNn6MO7trlz5058fHxkZOSlS5eCgoIqKyuXLVvWkTfsVOLj8X//h8OHkZeH6dMxcCCKi3H8OLKyMHky6C+qy2K28L+r+fDDB90xNCmJA7jt2/nNpIdCofD29gawbt06juPUajXrRAJTX8/NnctZWf1+JaiDAxcTw9FfVBdGW5PwpY3zvKyJxeLU1FSRSLRx48a8vDxLdiuxhGjNGqxciY0b0diIn3/GkSPIy0NtLZKSGC5ZI8xRGeWL+czz/vnPfw4NDVUqlRERERx9dP6bW7ewbRv27MHt27Cxgb8/pk+Hlxf0XT5LuhSaYuKLWc3zVldXS6XSioqKffv2zZs3j3UcYdAttJg9G599xjoKERb6h5QvLi4ID0djIyIjIZf/flwux8KFUKmwapVAaigAZ2fn5ORkACtXrrxz5w7rOAKQn4/9+2FtjcRE1lGI4FA3yqOKCoweDZkMPj565nmPHIHA7m4UFBR0+vTp+fPn7927l3UW1l58EUePIioKO3awjkIEh8oovxoasGQJDhyAWt16xMEBixdjwwYBzlHIZLIhQ4YoFIrTp0+PHz+edRx2MjMxYgRsbSGToXdv1mmI4FAZZUGhQE4OSkoglcLDQ8hzFOvXr09ISPDw8MjOzpZIJKzjMDJhAs6eRXw81q9nHYUIEZVR8iBKpdLPzy83NzcxMbGL7k7y7bf4y1/QowcKC/VcOkEIlVHyUOnp6YGBgWKxOCsry8vLi3UcfnEchg3DL78gORkrV7JOQwRKuKeTRCDGjBkTEhKiUCi64jLSgwfxyy948kksXsw6ChEu6kbJw/22jHT//v2vvfYa6zh8Uang7Q2ZDB99hAULWKchwkXdKHk4Z2fnTZs2AVixYkVlZSXrOHzZswcyGTw9MXcu6yhE0KiMkjaZN2/ehAkTqqqq1qxZwzoLL+RybNgAAO+8Y3AnBEIAUBklbZeSkiKRSPbu3fuPf/yDdZZH729/w61bGD5cmPfEJoJCZZS0le7OvRzHRUZGKhQK1nEepZoaJCcDQFISRCLWaYjQURklRli7dq1UKs3Pz9ddcd9pbdyImhpMnoyufO0WaTOaqSfGuXDhwtixY8VicXZ2tqenJ+s4j0B5OdzdIZfj0iX4+7NOQ8wAdaPEOAEBAXPnzu3My0jXrUNzM2bNohpK2ojKKDHa5s2be/bsee7cuQMHDrDOYmL51659UlCgsbHBW2+xzkLMBpVRYjQXF5d3330XwPLlyzvZMtL4N94IuXBh/dKlrXcrIKQN6LNR0h4cx02cOPHs2bOLFi1KTU1lHcc0Ll269Mwzz0gkkoKCgr59+7KOQ8wGdaOkPUQikW4Z6Ycffnjx4kXWcUxjzZo1HMctX76caigxCpVR0k4eHh6rV6/mOC4iIkKlUrGO01Hff//9mTNnnJycVq1axToLMTNURkn7rV271svLKycnx9yXkXIcp9tNNTY21lkAt7km5oU+GyUdcv78+XHjxkkkkitXrrgJ4wbR7ZCWljZr1qw+ffpcv37dVmB3xCLCR90o6ZDAwMA5c+bI5fLFZrsjp0ajWbduHYA333yTaihpB+pGSUdVVVV5eXlVVlZ+/vnnL7/8Mus4RktNTY2IiPDw8MjJybGizZyI8aiMEhP46KOPwsLCHn/88by8vB5mdcMiuVzu4eFRVlZ2+PDh4OBg1nGIWaKTemICCxYsGDdu3O3bt9euXcs6i3G2bt1aVlY2bNiwGTNmsM5CzBV1o8Q08vPzfX19VSpVenr6qFGjWMdpk9raWjc3t+rq6lOnTk2cOJF1HGKuqBslpuHp6blq1SqtVhseHm4uy0iTkpKqq6vHjh1LNZR0BHWjxGQUCoWvr29+fn5SUlJMTAzrOA/x66+/Dho0SC6X//jjjyNGjGAdh5gx6kaJydjY2HzwwQcikSgxMfHGjRus4zxEYmJic3NzcHAw1VDSQdSNEhObM2fOZ599Nnny5G+//ZZ1FoOuX78+ePBgrVZ75coVqVTKOg4xb9SNEhPbsmXLY4899t1336WlpbHOYlB8fLxKpQoNDe3du/eyZcveot1FSQdQN0pMb/fu3eHh4b17987Ly3NycmId517Z2dn+/v5isbigoKCkpCQgIMDa2jorK4vaUtI+VEaJ6XEcFxAQcPHixcWLF+/cudOE79zY2KhSqRoaGtRqte6xvr5eo9HU1dVptdra2lqO42pqajiO0z2vra3VarV1dXUajaa+vl73u4qKiqqrq6Ojozdt2gRg4cKFe/bsCQgIOHfunIjuA0qMR2WUPBI5OTn+/v5qtfrQoUNPPfWUrpbdX9FUKlVjY6NSqWxqalIoFM3NzS0tLXK5XPeoe9Lc3KxQKJqampRKpanibdu27dVXX9Vt5lRdXS2VSisqKvbt2zdv3jxTfQnSdVAZJY9KVFTU7t271Wq1Cd/T1tbWxsbGzs5OLBbb29tbW1s7ODhYWVl1797d0tLS0dHRwsLCyclJJBLpHnv06KF7bmFh4ejoaGlp2b17dysrKx8fH0tLy9/e9u9///vcuXNdXFzy8vJ69uxpwsCkK6AySh6J3+4yYm9vr7sPs6GK5uDgYG1trauJ9vb2YrHYzs7OxsbG1tZWIpF069atW7duEolEV0DbnaeysjIlJSUuLs7CQv+0alBQ0OnTp+fPn7937952fxXSRXGEPAIpKSm6b7ATJ06wzsJptVpfX18AKSkphsZcv35dIpGIRKIzZ87wmY10AtSNEtMrKSkZMmRIQ0ODq6vrjRs3/nj6zMoXX3wxc+bM7t275+Xl9enTR++Y9evXJyQkeHh4ZGdnSyQSnhMS80XrRomJcRy3aNGihoYGABEREUKooQCCg4P/+te/1tfXr1y50tCYmJgYb2/vgoIC3Qw+IW1E3SgxsZSUFN1O+GKxuLS09PHHH2edqFVpaengwYMbGxtPnDjx/PPP6x2Tnp4eGBgoFouzsrK8vLx4TkjMFHWjxJSKi4t/25RkxowZwqmhAFxdXXU3C4mKimpqatI7ZsyYMSEhIQqFIiIigjoM0kZURonJcBwXHh6uO50HEBkZyTbP/ZYvX+7n51dSUrJhwwZDY5KTk3v16nX+/PlPP/2Uz2zEfNFJPTGZXbt2RUVF6Z5LpdKcnBwBXhSUmZk5cuRIkUh06dIl3fT9/T755JOQkBAXF5dr16499thjPCckZoe6UWIaRUVFf9xjdPHixQKsoQCGDx8eHh6uVqvDw8O1Wq3eMfPmzZswYUJVVdWaNWt4jkfMEXWjxAQ4jps8efKpU6d0/2lvb19WVubo6Mg2lSH19fXe3t63bt1KTU1dtGiR3jHXr18fOnSoQqE4c+bMuHHjeE5IzAt1o8QEdu7c+VsNBTB79mzB1lAA3bt3f//99wGsXr26vLxc7xh3d/eYmBiO4yIjIxUKBb8BiZmhMko6qqioKDY29o9HwsPDWYVpo5deemnKlCl1dXXR0dGGxqxdu1Yqlebn5ycnJ/OZjZgdKqOkQ7Ra7fz58xsbG387MnLkSH9/f4aR2mjHjh12dnYHDhz45ptv9A4Qi8W7du0SiUTX09K0MhnP8YgZoTJKOmTnzp3nz5//4xEBrnPSy9XV9Y033sADl5GOHTv2l5iYfbm5FosX85uOmBOaYiLtV1RUNHTo0D+2oi4uLmVlZeZyQbparR4+fHhWVlZcXNzbb7+tf1BVFaRS3LmDzz7D7Nn8BiTmgbpR0k73n84DmD9/vrnUUABWVlapqakWFhbvvfdebm6u/kEuLnj3XQD43/9FTQ2f8Yi5oDJK2mnHjh33nM6LRKKFCxeyytM+zzzzzKJFi5RKZXh4uMEzs5AQjB+P27dx90waITp0Uk/a4/7TeQACv6myIbW1tVKp9D//+c+RffumG7qJSEEBfH2hVOLCBYwezW9AInTUjRKj6T2dh/lMLt3DyckpZdu2XwIDp0dHo6JC/yAPD6xeDa0W4eFQqfgNSISOyigx2vbt2+85nQfQt29fQ7vPCd+0mTP97O1x5w5WrTI4aO1aeHkhJwebN/MYjZgBKqPEOEVFRfHx8fcfX7RokZWVFf95TGbnTtjZ4e9/x+nT+gfY2OCDDyAS4a23UFjIbzgiaFRGiRG0Wm1ISMj9p/NWVlYLFixgEslk+vdHXBwAREaipUX/mMBAzJkDuRz/3ciKEFAZJUbZtm3bhQsX7j8+bdq0J598kv88JhYdDV9fyGR45x2DY/72Nzz2GL77DocO8ZiMCBrN1JO2unHjhq+v7/2tKIAzZ86MHz+e/0im989/YtQoWFnh3/+Gt7f+MR99hLAw9O6N3Fz06MFvPiJE1I2SNjE0Ow/Ay8ur82wlN2IEwsKgVCIiAoY6jAULMG4c/vOf1g8BSJdHZZS0yZYtW/SezgOIiIgQ5g7N7bRpE/r0QXo6Pv5Y/wCRCCkpsLFBaioyMvgNR4SITurJwxUUFDz99NNyufz+l7p161ZWVubs7Mx/qkfowAG8+iqcnZGXh1699I+Jj8eGDRgyBD//DGtrfvMRYaFulDyEVqsNCwvTW0MBvPLKK52thgKYPRv/8z+orsbq1QbHvPEGPD1x5Qq2bOExGREi6kbJQ2zevHmV4UXpmZmZw4YN4zMPT4qL4eODpiacPo0JE/SPOXcO48ejWzdcuYKBA/nNRwSEulHyIPn5+bpNOfXy8/PrnDUUwIABrRuRPGAZ6dixeOUVNDfj9df5jEaEhsooMejBp/MAli5dymcevkVHw9sb168jKcngmPffxzPPYMUKHmMRwaGTemJQcnLyA25V5OTkdOvWLVtbWz4j8e3iRQQEwNoaWVmQSlmnIQJF3SjRLz8/PyEh4QEDQkJCOnkNBfDnPyM09CHLSEmXR90o0UOr1QYGBl68ePEBY3JycrwNXefTmVRXQypFRQX27YOh3UhJ10bdKNFj8+bND66h48eP7xI1FICzc+vOeCtX4s4d1mmIEFE3Su6Vn5/v5+f3gJklAIcPHw4ODuYtEntBQSgtxRdfYMiQu44XFiIzE4WFGDgQvr7w9ISlJaOIhBkqo+QubTmdf+KJJ0pKSqy71KU7t2/DyQk2Nr8fqazE1Kn3Xgzq44OjRzFoEM/pCFt0Uk/ukpyc/OAaCmDhwoVdq4YCePzxu2rozZsYORIZGQgMRFoasrJw7BimTcPVqxg2DJmZ7IISBqgbJb+7du2av7//g0/nLS0tCwsL+/fvz1sqIQoNxd69CAtDaios/tCLxMYiKQnjxuHsWXbhCN+ojJJWWq02ICDghx9+ePCwadOmHT16lJ9IAlVRgb594eAAmeze/UZbWuDpidJSXLsGT09G+Qjf6KSetHrvvfceWkMBRERE8BBG0K5ehUqFoCA9ezZLJHjuOQDIz+c/F2GFyihptWPHjoeOcXNzCwoK4iGMoN24AcDgXiS646Wl/OUhrFEZJa1eeOGFh44JDw+3sOjy3zO6JU2GboNaXw8AnW/zQGJYl/+RIP+VkpJy6tQpPz8/QwNsbGxCQkJ4TCRU7u4AIJPpfzU3FwDc3PjLQ1ijMkp+N3HixEuXLqWlpbnpqwKzZs3q2bMn/6kERyqFWIyvv0ZV1b0vlZfj5Ek4O8PHh0UywgaVUXIXCwuLmTNn5ubmbtu2rdfd98+gyaVWLi4ID0djIyIj8cfFYXI5Fi6ESoVVq2Bnxy4f4RsteCIGNTY2vv/++8nJyQ0NDf7+/j///DPrRIJRUYHRoyGTwccH06dj4EAUF+P4cWRlYfJkHDmCTr/3FfkDKqPkISorKzMyMiZNmiSRSFhnEZKGBixZggMHoFa3HnFwwOLF2LCBLqvvaqiMEtIBCgVyclBSAqkUHh6gZQxdEpVRQgjpEPrHkxBCOuT/AYzk2CEzPaH+AAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c41760>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCOC(=O)[C@@H](C)C(=O)OC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c41760>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCOC(=O)[C@@H](C)C(=O)OC\n"
     ]
    }
   ],
   "source": [
    "# Preparing a carboxylic acid from hydrolysis of an ethyl ester\n",
    "reaction_smarts = '[C:4][C:1](=[O:3])[OH:2]>>[C:4][C:1](=[O:3])[O:2]CC'\n",
    "reactant_smiles = 'OC(=O)[C@H](Cl)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'OC(=O)[C@@H](Cl)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'OC(=O)[C@@H](C(=O)OC)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'OC(=O)[C@H](C(=O)OC)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [CH:1][O:2][C:3]>>[CH:1][OH:2].O[C:3]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c33a30>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCC[C@@H](OCC)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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9NDnn39uGunu7p4+ffq2bdskTHXntFptnzL91y2RhHXmwsOOEydO7N86ITtSU1OTkJAQExMzbdo0fuWcXLFGRWUwGObOndt7a6LS0tKAgIDa2lrTSElJyZIlS6RI10837y93u1089u7dK+wh7e7u7lDrzLmYSd5Yo2JLSUmJjY3tPZKamhoTEyNVHkv55y2RLl++bHrYcdq0abe7i01kj1ijVldaWtr7KaCurq7w8PBdu3b1HomIiPj666+lSGdht9wSKSMjY8iQIVxnTnLFGrW63377bejQob1vLBQUFAwbNuzvv/82jZw8eXLy5Mm2f2fpDtXX17/99tvCNzwLl0GFSq2qqpI6GpHlKYxGI8jS/v77b9MGHwCSkpIuXrz4zTffmEbefffd6urq7777zjRiMBicnZ1FTWlljY2NmzZtys3N9ff3X7hw4dKlS02VSiQnrFHLMxqNYWFhH374YWxsrDCi0+nCw8PXr19vegRQp9NFRER88MEHzzzzjHRJxdDT02Na7kMkS6xRqzh27Nhzzz1XVFRkeuYnLy8vLi7u9OnTppGjR48uWrTo3LlzwtJCIrJTrFFrWb58uV6v/+yzz0wjb775Znt7+/bt200jdXV1pm3nichOsUatpb29PSwsLD09fc6cOcJIR0dHaGjoli1b5s6dK202IrIg1qgVHTp06JVXXikqKhIepgaQm5u7dOnS4uJi4UsuiUgGWKPWtXTpUnd39y1btphGjhw5MmPGDN6zJpIN1qh1abXa0NDQr776atasWVJnISKr4EoU6xo4cODWrVtfeuml9vZ2qbMQkVXIar23bXr88cf/+uuv7u5uqYMQkVVwUk9EZBZO6omIzPJ/y/D+6wjWgUIAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c49f80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@H](C)O.CCO\n"
     ]
    },
    {
     "data": {
      "image/png": "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9NDnn39uGunu7p4+ffq2bdskTHXntFptnzL91y2RhHXmwsOOEydO7N86ITtSU1OTkJAQExMzbdo0fuWcXLFGRWUwGObOndt7a6LS0tKAgIDa2lrTSElJyZIlS6RI10837y93u1089u7dK+wh7e7u7lDrzLmYSd5Yo2JLSUmJjY3tPZKamhoTEyNVHkv55y2RLl++bHrYcdq0abe7i01kj1ijVldaWtr7KaCurq7w8PBdu3b1HomIiPj666+lSGdht9wSKSMjY8iQIVxnTnLFGrW63377bejQob1vLBQUFAwbNuzvv/82jZw8eXLy5Mm2f2fpDtXX17/99tvCNzwLl0GFSq2qqpI6GpHlKYxGI8jS/v77b9MGHwCSkpIuXrz4zTffmEbefffd6urq7777zjRiMBicnZ1FTWlljY2NmzZtys3N9ff3X7hw4dKlS02VSiQnrFHLMxqNYWFhH374YWxsrDCi0+nCw8PXr19vegRQp9NFRER88MEHzzzzjHRJxdDT02Na7kMkS6xRqzh27Nhzzz1XVFRkeuYnLy8vLi7u9OnTppGjR48uWrTo3LlzwtJCIrJTrFFrWb58uV6v/+yzz0wjb775Znt7+/bt200jdXV1pm3nichOsUatpb29PSwsLD09fc6cOcJIR0dHaGjoli1b5s6dK202IrIg1qgVHTp06JVXXikqKhIepgaQm5u7dOnS4uJi4UsuiUgGWKPWtXTpUnd39y1btphGjhw5MmPGDN6zJpIN1qh1abXa0NDQr776atasWVJnISKr4EoU6xo4cODWrVtfeuml9vZ2qbMQkVXIar23bXr88cf/+uuv7u5uqYMQkVVwUk9EZBZO6omIzPJ/y/D+6wjWgUIAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c49f80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCC[C@H](C)O.CCO\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [CH:1][O:2][C:3]>>[CH:1][OH:2].O[C:3]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c49f80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CC=C/C(OCC)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c41ee0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CC=CC(C)O.CCO\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c41f30>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CC=CC(C)O.CCO\n"
     ]
    }
   ],
   "source": [
    "# Alkylation reaction with unspecified chirality, template could not have specified\n",
    "reaction_smarts = '[CH:1][O:2][C:3]>>[CH:1][OH:2].O[C:3]'\n",
    "reactant_smiles = 'CCCC[C@@H](OCC)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'CC=C/C(OCC)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [*:4][C:1]([*:5])[O:2][C:3]>>[*:4][C:1]([*:5])[OH:2].O[C:3]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c43990>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCC[C@@](CC)(OCC)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c43990>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@](C)(O)CC.CCO\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c43990>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCC[C@](C)(O)CC.CCO\n"
     ]
    }
   ],
   "source": [
    "# Alkylation reaction with unspecified chirality, template could not have specified due to symmetry\n",
    "reaction_smarts = '[*:4][C:1]([*:5])[O:2][C:3]>>[*:4][C:1]([*:5])[OH:2].O[C:3]'\n",
    "reactant_smiles = 'CCCC[C@@](CC)(OCC)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [OH:1][CH:2]=[C:3]>>CC[O:1][CH:2]=[C:3]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c4ef80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: O/C=C/CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c4ef80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCC=COCC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c4eb70>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CC/C=C/OCC\n"
     ]
    }
   ],
   "source": [
    "reaction_smarts = '[OH:1][CH:2]=[C:3]>>CC[O:1][CH:2]=[C:3]'\n",
    "reactant_smiles = 'O/C=C/CC'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Testing achiral transformations with chiral molecules (fully in template)\n",
    "\n",
    "When applying a transformation expecting an achiral reaction center to a molecule with specified chirality, we do _not_ want a match. Generating a retrosynthetic suggestion in this situation would falsely imply that the transformation could be performed stereoselectively."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [C:1][CH:2]([CH3:3])[O:4][C:5]>>[C:1][CH:2]([CH3:3])[OH:4].O[C:5]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c41ee0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCC[C@@H](OCC)C\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAAT5UlEQVR4nO3de1BU5eMG8GeXu1xEULyk38pQAQ0EzURTmZJRiS6m1Eym00WXykIaI/qmI1JajDp91xkxt4uTZdYgjQFOOiNaWgppEiIXlYtAJiGgLFd3WdjfH8ffiqil7O45u2efz3++u+x5GOvxvOe8512F0WgEERH1l1LqAERE9o01SkRkFtYoEZFZWKNERGZhjZLEjEYj73OSXWONkmSMRuPu3bvDw8Off/75+Pj4hoYGqRMR9YeCJwIkifz8/BUrVhw/fhyAk5NTd3e3v79/ampqfHy8s7Oz1OmI7gLPRklsFy9ejI+Pnz59+vHjx0eMGKHRaIqKiubNm9fU1PTGG29MmDBh3759UmckuhtGIrHodDq1Wu3t7Q3A1dU1ISGhpaXF9Gp2dvYDDzwg/GcZGxtbUVEhYVSiO8caJZFkZ2fff//9ppasrKy8+T16vV6tVvv4+ABwcXFJSEjQarXiRyW6K6xRsrrS0tI5c+YIBRocHLx///5/fv/FixdVKpWTkxOAwYMHq9Vqg8EgTlSifmCNkhU1NTUlJCQIhejn53dXhfj7778/8sgjQvlGRET88ssvVo1K1G+sUbIKvV6v0WgGDx4sTM9VKlVDQ8PdfkhPT09GRsa9995ruhRQXV1tjbRE5mCNkuUdOHBg/PjxQvfNnj27uLjYnE9ra2tbvXq1h4cHAE9Pz/fff1/f0WGpqETm44InsqTy8vInnngiOjq6pKRkzJgxGRkZvSu1fzw9PT/44INz584tXry4o6PjzK5dLkFB+OorcMkz2QYuvyfLaG5uTktLU6vVOp3O19f33XffTUxMdHNzs+xRDh8+PP5//xuclQUAM2dCrUZ4uGUPQXS3WKNkrp6enp07d77zzjv19fVKpXLRokUbN24cOnSo9Y6HnTvxzjuor4dSiUWLsHEjrHc4on/DGiWzHD58ODExsbCwEMCsWbPUavXEiRPFOHBbGzZtQloadDp4eWHlSvz3v7D0yS/RnWCNUj9duHDhvffe27lzp9FoHDly5Pr16xcvXqxQKEQNUV6OVauwezcAjBmD9esRFydqACLWKPVDR0fHhg0bNmzY0NnZOWDAgKSkpOTkZOFOujQOHkRiIoqLAeCxx6BWY8IEycKQ42GN0l0wGo2ZmZlJSUk1NTUKhWLhwoUbN240reuUksGA7duxahUaG+HsjJdfxvr1GDxY6ljkEFijdKdOnjy5YsWKo0ePApg0aZJarTY9ZWQrLl9GairS09HdDT8/rFmD5cvBbffIylij9O/q6urWrl37+eef9/T0DB8+fO3atUuXLlUqbXXR8alTSEzEzz8DQGgoNBpMnSpxJJI1W/0/gWyDXq/fvHlzUFDQp59+6uTklJCQcObMGZVKZbsdCiAsDD/9hOxsjB6NoiLo9VIHIpnj2SjdVk5OTmJiYlVVFYDY2Fi1Wm3aD9Q+XL2KH3/EM89InYNkjjVKt3DmzJm33npr//79AIKCgj7++ON58+ZJHYrIRvHqO93g8uXLqampW7duNRgMfn5+a9asWb58uUy+HMloREUFTpzAuXMIDERYGIKDb7gBVVaGzk5ERPT9wVOnoFTiwQfFDEt2hGejdI3BYNi+ffuqVasaGxudnZ1ffvnldevWDRkyROpcFtLQgKeeQl7eDYPBwdizB+PGXftjZCTy86HVwsfnhreNGoXmZrS2ihSV7I0N3yggER08eDAiIiI+Pr6xsfGxxx4rKCjQaDTy6dDaWkRGIi8PUVHIzMTp08jOxoIFKCvDlCnIz5c6H9k5SbbnI9tRXl4e9/8PUAYGBmZkZEidyApeeskIGJctM3Z33zC+erURMM6cee2PU6caAePN3/40cqTRy0uMnGSfOKl3dK+//vonn3zi4+OzevXqFStWuLq6Sp3I0i5dwsiR8PZGZSV8fW94SadDUBCqq1FSgpAQTuqpf2Rx64DMkJqaqlAo1qxZY8Wt7aRVXIyuLkRH9+1QAG5umDsX27bh7FmEhFwbPHoUnp43vE2nEyMn2S3WqKMbMmRIenq61CmsqaoKAEaPvvWrwnht7fWRmJhbvM3Ly+K5SDZYoyR3wpKm263ZamkBAH//6yPp6eizW9XKlejqslI6kgHWKMldYCAAlJff+tXSUgDo/XTWCy/0vTa6Zg2am62UjmSAC55I7kJC4OqKnBw0NvZ9qa4Oe/di0CAurSdzsEZJ7vz88OqraG/Ha6+hs/P6+NWrWLYMej1WruSlTzIHJ/XkAFatwr59yMxEWRnmz8eYMaiqQlYWCgsRHY3ERKnzkX1jjZIDCAhAQQGWL8euXVi37tqglxeSkvDRR3ByujZyuy+SsuVdAckGcPk9ORKdDiUlqKlBcDDGjmU/kkWwRomIzMJ/jYmIzMIaJSIyC2uUiMgsrFEiIrOwRomIzMIaJSIyC2uUiMgsrFEiIrOwRomIzMIaJSIyC2uUiMgsrFEiIrOwRomIzMIaJSIyC2uUiMgsrFEiIrOwRomIzMIaJSIyC7/Szm4ZjaiowIkTOHcOgYEIC0NwMJx7/YWWlaGzExERfX/w1CkolfxmdiJL4Xcx2aeGBjz1FPLybhgMDsaePRg37tofIyORnw+tFj4+N7xt1Cg0N6O1VaSoRHLHSb0dqq1FZCTy8hAVhcxMnD6N7GwsWICyMkyZgvx8qfMRORbWqB1auxaVlVi2DAcPYsECTJiAJ55AZiZWr0ZLC5KTpc5H5Fg4qbc3ly5h5Eh4e6OyEr6+N7yk0yEoCNXVKClBSAgn9UTi4C0me1NcjK4uREf37VAAbm6YOxfbtuHsWYSEXBs8ehSenje8TacTIyeRw2CN2puqKgAYPfrWrwrjtbXXR2JibvE2Ly+L5yJyWKxReyMsaXK+zV9cSwsA+PtfH0lPh4fHDe9ZuRJdXVZKR+SAWKP2JjAQAMrLb/1qaSkAPPDA9ZEXXuh7bXTNGjQ3WykdkQPinXp7ExICV1fk5KCxse9LdXXYuxeDBnFpPZGYWKP2xs8Pr76K9na89ho6O6+PX72KZcug12PlSl76JBITJ/V2aNUq7NuHzEyUlWH+fIwZg6oqZGWhsBDR0UhMlDofkWNhjdqhgAAUFGD5cuzahXXrrg16eSEpCR99BCenayMKxa1/XMkpCJElcfm9PdPpUFKCmhoEB2Ps2Gv9eOAAnnsOM2YgK0vqfEQOgWej9szNDRERffdwcnbGlSvQaiXKRORwOL+TnYEDAbBGiUTDGpUdoUaFdfhEZH2sUdkRFtvzbJRILLzFJDt6Pdzc4OzMJz6JxMGzUdlxdYW7OwwGdHRIHYXIIbBG5Yh3mYhExBqVI95lIhIRa1SOeJeJSESsUTnipJ5IRKxROeKknkhErFE54qSeSESsUTnipJ5IRKxROWKNEomINSpHwqSe10aJRMEalSOejRKJiDUqR7xTTyQi1qgc8U49kYhYo3LEST2RiFijcsQaJRIRv4tJhlp9fXdMm9bi4fGe1EmIHAG3bZahtrY2b2/vAQMGtLe3S52FSP5YozJkNBpdXV0NBoNer3dxcZE6DpHM8dqoDCkUCm9vbwAtXPNEZH2sUXkaOHAgWKNEomCNypOPjw8ALW/WE1kfa1SehLNR1iiRCFij8sQaJRINa1SeeG2USDSsUXnitVEi0bBG5YmTejLhfwbWxhqVJ+FslJN6B1dfX79w4cKoqKiuri6ps8gZa1SeeDZKO3bsCA4O/v7778+fP19SUiJ1HDljjcoTa9SR1dXVPf300y+++OKVK1fmzZt3+vTpiRMnSh1Kzlij8sQ79Y7JaDR++umnQUFBWVlZvr6+Go3mxx9/HDVqlNS5ZI4b5ckT79QLtFptW1vbPffcI3UQMZw/f16lUuXm5gKIjY3dtm2bg/zikuPZqDxxUq/VauPj48ePHz958uTp06fn5ORInciKhJPQ0NDQ3NzcgICAHTt25OTksEPFYyQ5On/+PIB7771X6iDSMJWIq6urcGIOYMaMGYcOHZI6muVVVFRERUUJv2NcXNylS5ekTuRwWKPy1NTUBMDX11fqIGK7cuWKSqUSOiUyMrK0tLStrU2tVg8dOlQYnD59+oEDB6SOaRldXV1qtdrT0xPAsGHDvv/+e6kTOSjWqDx1dXUpFAqlUtnT0yN1FvFkZ2ePGDECgIeHR1pamsFgML3U2tqalpbm5+dnKtPc3FwJo5qvuLh4ypQpppPQxsZGqRM5LtaobAknKVqtVuogYqivr4+LixM65ZFHHjl79uwt33ZzmR48eFDkqObr6upKS0tzc3MDMGLEiKysLKkTOTrWqGy98cYb/v7+ISEhO3bs6O7uljqOFWVkZAwePBjAgAED0tLS/vWXFcp00KBBpjK1o2ump06dmjRpEgCFQqFSqVpaWqRORKxR+aqsrBw5cqTQFBMnTvzhhx/kN8Gvq6ubP3++8DvOmTOnpqbmzn+2paWlT5n+9NNPVktqAXq9Pi0tzdXVFcD9999v7xcl5IQ1KiuXL1/uPYvX6XQajcZUpg8++GBGRoZsyjQjI0OYng8cOFCj0fTv9xLK1NfX11SmP//8s8Wjmi8vLy8kJMR0Etra2ip1IrqONSorycnJ3377bZ9BoUxNqwhlUKbV1dXR0dHCrxMTE/Pnn3+a+YF9ynT27Nn5+fkWiWq+jo6O5ORkJycnAIGBgbbZ8g6ONSor/1COfco0NDTUHsu0p6dHo9EI33s6aNAgjUZjwQ9vampKSUkRnlwQyvS3336z4Of3w6+//jpu3DgAzs7OycnJnZ2d0uahW2KN2rempqZZs2a1tbXd4fuFMhVWBQEICwuzozKtrKx89NFHheSxsbF//fWXNY7S2NjYp0yPHz9ujQP9s/b29uTkZKVSCWDChAmSZKA7xBq1e0uWLNm4ceNd/cjVq1dvLlMrxbOI7u5ujUbj5eUFYOjQobt377b2EaUt08OHDwcGBgJwcXFJTk6+evWqaIemfmCN2p9Dhw71/l+6ra2t9zrzOyeU6fDhw4WmmDp1anZ2tuViWkx5efnMmTNN68wbGhpEO7RQpqbHSWfPnn3ixAmrHrG5uVmlUikUCuGft5MnT1r1cGQRrFH7k5WVNW7cOEtdJmtvb1er1aYyjYyMtJ0y7b3OfPjw4Xv27JEkRkNDQ58y/f33361xINOmdu7u7ikpKXq93hpHIYtjjdqHPjejFy5cmJKSYsHPFx48HzZsmO2UaVFR0eTJk4UlPosXL25qapI2T0NDQ3Jy8oABA4RIsbGxFjxVvHkrAEt9MomANWoHWltbhw0b9scff5hG6uvrL168aPED9SnTadOmSVKmvdeZ33fffTa1k8ilS5csXqb/sBUA2QXWqH348ssvw8LCxJnlSbslUmFhYXh4uI0/7CiUqYeHh6lMCwoK+vE5d7gVANk41qiN+uKLLzZs2NB75Mknn1y3bp1oAVpbW/uUqbWfPuzs7ExJSXFxcQEwevRo23/Ovb6+vk+Z9p4x/Ku73QqAbBZr1EZduHAhICCguLjYNFJbWyv+Y9SibYl07NixoKAgAEqlUqVS3flKWMn1LlOlUhkbG1tYWPjPP2LOVgBkg1ijtkKv16enp/c+Jdm6devDDz9sC1fKrLolUu+HHcePH287T2HeFaFM3d3dhTKNi4srKyu75TstshUA2RTWqK3o7u6eNWvW5s2bTSM9PT2zZ8/++OOPJUzV281bIplfpkeOHBk7dqzpYUd7X2f+559/JiQk9C7TM2fOmF61+FYAZCNYo1LS6XS9F5NXVVUFBASUl5ebRioqKjZt2iRFtNu6eUuk/u0vp9VqExIShIcdQ0NDrb2sXUy1tbV9yrSsrMx6WwGQ5FijUtJoNNHR0b2ndZs2bYqKirL9iZ6ZWyLt37//P//5j+lhR51OZ72oUqmurlapVMKyLeFfCwDPPvtsfX291NHIwlijUjIYDA899NDnn39uGunu7p4+ffq2bdskTHXntFptnzL91y2RhHXmwsOOEydO7N86ITtSU1OTkJAQExMzbdo0fuWcXLFGRWUwGObOndt7a6LS0tKAgIDa2lrTSElJyZIlS6RI10837y93u1089u7dK+wh7e7u7lDrzLmYSd5Yo2JLSUmJjY3tPZKamhoTEyNVHkv55y2RLl++bHrYcdq0abe7i01kj1ijVldaWtr7KaCurq7w8PBdu3b1HomIiPj666+lSGdht9wSKSMjY8iQIVxnTnLFGrW63377bejQob1vLBQUFAwbNuzvv/82jZw8eXLy5Mm2f2fpDtXX17/99tvCNzwLl0GFSq2qqpI6GpHlKYxGI8jS/v77b9MGHwCSkpIuXrz4zTffmEbefffd6urq7777zjRiMBicnZ1FTWlljY2NmzZtys3N9ff3X7hw4dKlS02VSiQnrFHLMxqNYWFhH374YWxsrDCi0+nCw8PXr19vegRQp9NFRER88MEHzzzzjHRJxdDT02Na7kMkS6xRqzh27Nhzzz1XVFRkeuYnLy8vLi7u9OnTppGjR48uWrTo3LlzwtJCIrJTrFFrWb58uV6v/+yzz0wjb775Znt7+/bt200jdXV1pm3nichOsUatpb29PSwsLD09fc6cOcJIR0dHaGjoli1b5s6dK202IrIg1qgVHTp06JVXXikqKhIepgaQm5u7dOnS4uJi4UsuiUgGWKPWtXTpUnd39y1btphGjhw5MmPGDN6zJpIN1qh1abXa0NDQr776atasWVJnISKr4EoU6xo4cODWrVtfeuml9vZ2qbMQkVXIar23bXr88cf/+uuv7u5uqYMQkVVwUk9EZBZO6omIzPJ/y/D+6wjWgUIAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c47800>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@H](C)O.CCO\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c49940>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n"
     ]
    }
   ],
   "source": [
    "# Alkylation reaction with unspecified chirality, template could have specified\n",
    "reaction_smarts = '[C:1][CH:2]([CH3:3])[O:4][C:5]>>[C:1][CH:2]([CH3:3])[OH:4].O[C:5]'\n",
    "reactant_smiles = 'CCCC[C@@H](OCC)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [CH:1]([CH3:2])=[CH:3]([CH2:4][O:5][C:6])>>[CH:1]([CH3:2])=[CH:3][CH2:4][OH:5].O[C:6]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c41ee0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: C(\\C)=C\\COCC\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAAVXUlEQVR4nO3de1BU5xkG8GeXi4IoF42IoqQGEZAYwQoWNd5orJbOdGLo1KSrNpMhNY0LmKQbbeJioslWk7jUakOnYwOxnRTbzhSNmgE1xFjBBI03FOMtCipBEYUVF9j9+schG8QbcHb37OX5DX/EZfecN67n+c7ud773qIQQICKi3lIrXQARkXtjjBIRycIYJSKShTFKRCQLY5RchRCCE57kjhijpDwhxObNmxMTE59++un58+fX19crXRFRD6g4/pOyKioqsrKyKioqAPj4+FgslrCwsBUrVvzmN7/x9fVVujqiB+PZKCnm4sWLzz//fGpqakVFxdChQ/Pz848cOTJnzpyGhobFixcnJCRs27ZN6RqJukEQOZ3ZbDYajf379wfg7++v1WqvX79u+21JSUlcXJz07zMtLe3YsWMKlkr0QIxRcrbi4uKRI0dKKZmenn769Ok7n9Pa2mo0GgcMGADAz89Pq9U2NjY6v1Si7mCMkvNUVVXNmjVLCtC4uLgdO3bc//n19fVardbHxwfAwIEDjUZje3u7c0ol6j7GKDnD1atXbYEYFhbWo0CsrKycMmWKFL5JSUmfffaZQ0sl6inGKDlWa2trfn7+oEGDAPj6+mZmZtbX1/diO8XFxQ8//LDtq4CzZ8/au1KiXmKMkgOVlJQkJCRI2Tdz5swjR47I2ZrJZDIYDEFBQQACAwN1Ol1TU5O9SiXqNcYoOcTJkyczMjKkAB01alRRUZG9tlxTU6PRaFQqFYBhw4YVFBRYrVZ7bZyoFxijZGdNTU16vb5Pnz4AgoKC9Hr9rVu37L6XioqKiRMnSjGdnJy8b98+u++CqJsYo2Q3FouloKAgPDwcgFqt1mg0ly9fds7uVCqVRqO5dOmS43ZHdC+MUbKP8vLylJQU6fQwJSWlvLzcOfttbm62nfz269fPQSe/RPfBGCW5Lly4YPuyMjIyUpEvKzt/FRsdHW3Hr2KJHogxSr1nMpn0en1AQICLTJ2XlpZ2vjDg8OHDChZD3oMxSr1htVqLioqioqJsF3KeO3dO6aKEEKKtrc0ul6kSdR9jlHrsyy+/nDx5sm1Z0Z49e5SuqCtp0ZTUZ09aNNXW1qZ0UeSxGKPUAxcvXszMzJTWdEZEROTn57vyIvdDhw5Nnz5divvzTz4pdu5UuiLyTGzbTN3S1ta2YcOG5cuX37hxw8/Pb9GiRW+++abUgcnF/ec//6nduHHxxx8DwJNPYs0afNdfisguGKP0YFu2bMnJyTl9+jSA9PR0o9H4yCOPKF1UT7S24s9/xvLluHEDfn5YtAhvvgl3GAPILTBG6X5OnDixZMmS7du3A4iNjX3vvfdmz56tdFG9dekScnPx17/CakVEBHJz8dxzUPMGECQXY5TurqGhYcWKFRs2bGhvbw8NDdXr9b/97W894eZIlZXIysLevQAwfjyMRnw3XUbUO4xR6qq9vX3jxo2vvfZafX29r6/vs88+u3LlyoceekjpuuxHCPzrX3jlFXzzDVQqPPUU1qzBdxdvEfUUY5Rus2vXruzs7CNHjgCYMWOG0Wh89NFHlS7KMW7exOrVWL0aLS0IDMQrr0CnQ0CA0mWR+2GMUodTp04tW7Zs8+bNAKKjo9966y3b8kpPVlODZcuwaROEQGQkVq2CRgOVSumyyJ0wRgkmk2nNmjUGg8FsNvfr1+/ll19eunSp1OzDW5SVISsLhw4BwNSpMBoxbpzSNZHbYIx6NSHEhx9+qNPpLl++rFKpfvWrX61evXrIkCFK16UEqxWbNuF3v0NdHdRqPPMM1qxBeLjSZZEbYIx6r/3792dlZZWXlwNITk7Oy8uzNUL2Xo2NMBhgNMJsRkgIXn0V2dnwqhNz6jnGqDeqra1dunTppk2bhBDDhg176623bJ3uCABOnsRLL2HrVgAYNQqrVsEbviam3mKMepeWlpY//vGPK1eubG5uDggI0Gq1r732mnSTOOqqtBTZ2Th2DADS0mA0YswYpWsiV8QY9SJbtmzRarXnzp0DkJ6evm7dOtsti+nu2tqwYQNyc9HYCD8//PrXWLUKgwYpXRa5FsaoVzhw4EB2dvaePXsAJCUlGY3GKVOmKF2U+2howIoVWL8eFgvCwrB8OV58ET4+SpdFroIx6uGuXr36xhtvrF+/3mKxDBw48PXXX3/xxRd9GAG9cPw4cnLwyScAEBeHtWsxa5bSNZFLYIx6LKm1nV6vv379utTa7o033ggODla6Lje3ZQuysnD2LACkpyMvj233iDHqmUpLS7OysqqqqgCkpaXl5eXFx8crXZSnaGnBu+/CYIDJhMBAnDqFiAilayIlMUY9TXV19ZIlS7Zt2wZg9OjR77333pw5c5QuyhNdvIgVK9DWho0blS6FFMYY9RzXrl37wx/+sHbt2tbW1tDQUJ1Ol5OT4+/vr3RdHs1i4VwTMUY9gdVq3bRp08svv1xfX69Wq5955pl33nln8ODBStflfUwmHDqE4GDExjJevQdbf7u93bt3JyYmLliwoL6+fvr06QcPHiwsLGSGOtu5c5g4EcHBmDQJCQkICsK8eTCZOn4bEYEf/7jrS8aMwfjxTi6THMH9m5l7sQsXLvz+97//8MMPAQwfPnzlypXz589XuiivdOIE0tJQW4vnnsMTT6C5GX//Oz76CNXV2LULISEQAlZr11dZreBnQY/AGHVLZrM5Nzd37dq1ZrO5f//+y5Yty8nJ8a7Wdi5lyRLU1uKDD7BgQccj8+fj2WdRWIgNG7BsmaLFkcPxQ71b8vPz27lzZ2tra0ZGxtGjR1999VVmqGJOncKOHXjiie8zFICPD4xGhIbiL39RrjJyEp6NuiW1Wv3+++9bLJYJEyYoXYvXq6yEEJg3r+vjoaGYMQP//jdu3gSAK1c6WkbZNDXxniWegTHqrpKSkpQugQCgY0XTXdcyjRgBAJcuAcDhw/jZz7o+gTOBHoExSiRPWBiA7yflO6urg0qFoUMBIDUV//znbb+dNs3htZFTMEaJ5ImJAYB9+zB79m2Pt7WhrAxRUR2f3Pv2RWTkbU/w83NWieRYnGIikic1FSNHYt061NTc9vj69aitxeLFCpVFzsOzUSJ5/P3x7rt46ikkJeH11zF2LG7dwvbtyMtDcjJeeEHp+sjhGKNEsv385/j0UyxcCK2245E+ffD888jL67gdnkqFO291ddcHyQ1xTT2R/Vy6hKNHMXgwxoyBL89RvAVjlIhIFk4xERHJwhglIpKFMUpEJAtjlIhIFsYoEZEsjFEiIlkYo0REsjBGiYhkYYwSEcnCGCUikoUxSkQkC2OUiEgWxigRkSyMUSIiWRijRESyMEaJiGRhjBIRycIYJSKShTFKRCQLY5SISBbGKBGRLIxRIiJZGKNERLIwRomIZGGMEhHJwhglIpKFMUpEJAtjlIhIFsYoEZEsjFEiIlkYo0REsjBGiYhkYYwSEcnCGCUikoUxSkQkC2OUiEgWxigRkSyMUSIiWRijRESyMEaJiGRhjBIRycIYJSKShTFKRCQLY5SISBZfpQugHrNYLJs2bYqNjVWr1RMmTFC6HLqnhoaG0tJSf3//iRMnDhkyROlyyFF4NupmPv300/Hjxy9cuDAjIyMlJeUXv/jF+fPnlS6KurJarYWFhXFxcU8//fS8efOio6Nzc3Nv3bqldF3kGILcxJkzZ+bOnSu9a1FRUXPnzu3Tpw+A/v37v/3227du3VK6QOpQWlr66KOPSu9UamrqjBkzpP+Ojo7+73//q3R1ZH+MUTdgMpn0en3fvn0BBAYG6vX6lpYWIcT58+c1Go10iA4fPrygoEDpSr3dvd6RnTt32oJ1xowZhw8fVrZOsi/GqEuzWq1FRUUjRowAoFKpMjIyzp071+U5u3btGjt2rHSITp8+/dChQ4qU6uWam5ttQ12/fv1sQ51NW1tbfn7+Qw89BMDX1zczM/Pbb79VqlqyL8ao6/riiy8mTZok5eP48eM///zzez3TYrEUFBQMHjwYgFqt1mg0dXV1zizVm0lD3fDhw21D3TfffHOvJzc0NGi1Wl9fXwChoaFGo7Gtrc2Z1ZIjMEZdUW1tbWZmplqtBhAREZGfn2+xWB74qoaGBp1O5+/vLx2iBoPBbDY7oVpvtn///tTUVGmomzBhwt69e7vzquPHj8+ePVt61ejRo7dt2+boOsmhGKOuxWw2G43GAQMGAPD399dqtdevX+/RFk6cODFnzhzpEI2Jidm6dauDSvVynYe6oUOHdnOo66y4uPiRRx6R3qn09PRTp045qFRyNMaoCykuLh45cqTtuDp9+nSvN1VSUhIfHy9tKi0t7dixY3as08vdvHnTYDD079/fNtTduHGjd5tqbW21jZp+fn69GDXJFTBGXUJVVdVPfvITKfViY2O3b98uf5vSIRocHGw7RBsbG+Vv1ssVFxf/4Ac/sA11Z86ckb/NixcvZmZm+vj4ABg0aJDRaGxvb5e/WXIaxqjCrl69qtVqpUMoLCzM7nMOV65csW1/4MCBPER77eDBg48//rgUoHFxcTt27LDv9isrKydPnixtPykpac+ePfbdPjkOY1Qx0hUwgwYNsl0BU19f76B9VVZWTpkyRTpEExMTy8rKHLQjj9R5KJKGOgcNRdKkf1RUlO1s987r28gFMUaVUVpampCQIB0tM2fOPHLkiBN2Wlxc/PDDD9sO0bNnzzphp27tzi9Grl275uidmkwmg8EQFBQkrbbQ6XRNTU2O3inJwRh1tpMnT2ZkZEhZNmrUqKKiImfuXZoekQ7RgIAAnU7X6+kRj1dSUjJmzBjbNN3Ro0edufcLFy5oNBqVSgUgMjKyoKDAarU6swDqPsao8zQ1Nen1emkhfFBQkF6vV2ohfE1Nje0QHTZsGA/RLqqrq9PT020XjW3ZskWpSsrLy1NSUqRKUlJSysvLlaqE7oMx6gzSKqPw8HDbKqPLly8rXZSoqKiYOHGi7dLx//3vf0pXpLxr167pdDppqAsJCTEYDIr3fHHNfzzUGWPU4TqfUCQnJ+/bt0/pir5ntVoLCgqkVpgqlUqj0Vy6dEnpopRx54Jal0or1/koQ3dijDqQu3y9JbXVkA7Ru7bV8Hi7d+9+7LHHpKFu6tSpBw8eVLqiu+uyRK32k0+UroiEYIw6iDtOtn799de2ua/o6Ggnz30pxV2Gus5KSkoSEhIyYmKEj4+YOVM45TIPug/GqP0VFxd3vvTPva4r8p7OmHd2cb1586bSRXVXa2vrt++/L0JCBCD8/ER2tmhoULoo78UYtSdFFqLY/dtMj++M2Z0uru7h6lWh1QofHwGIsDBhNAq23VMCY9Q+lFoWffDgQT8/P41GY/ek89TOmF9++WU3u7i6jaoqMWuWAAQgYmOFPRoyUI8wRuVStknPn/70JynpwsLC1q1bZ/ek86TOmNJQ19Murm6juFiMHNkRpunpQkZ7MOopxqgsnVtGpqWlVVVVOb+GzrO3o0eP/vjjj+2+C3fvjCm/i6t7MJuF0SgGDBCA8PcXWq3wyP9N18MY7aUup2mOCK8eKSkpiYuLc1ygu29nTDt2cXUPtbUiM1Oo1QIQEREiP1940km3S2KM9pjLfml4Z9LZvcGoe3XGPH78uN27uLqNL74QkyZ1fMb/4Q+FB3wF7MIYoz3gFlPY9fX1jm4w6vqdMaUurrZvjV1nqHMqq1UUFYkRIwQgVCqRkSHufa89koMx2l1dLqh08fsYd0m6zz77zL7bd9nOmM7s4uoeTCah14u+fQUgAgOFXi+8bImaEzBGH8x9l/c4usGoqy3WUqSLq3s4f15oNB2f8SMjRUGBcPnFWm6EMXo/0mJzaaGLmy42d0LSucJ6ys5dXN1rqHOq3bvFY491hOm0aeKrr5QuyEMwRu/Ow1ofdU46BzUY7dIZ02mNrDq3PpKGOrY+uh+LRRQUiMGDBSDUaqHRiLo6pWtye4zRu9i/f/+PfvQjKRE8qRFn5wajjmjZ5+TOmGzE2XvXrgmdTvj7C0CEhAiDQXDskYExehuPbwt/Z/TY/SzbOZ0xy8vLHTokeIXqapGe3vEZPyZGKNfk390xRjt41U2K7mwwavekc9wtp5zwBYV3KSkRY8Z0hGlamnDuLac8A2NUiDtmtM+cOaN0Rc7ghGkZ+06du9qFAZ7DbBbvvCOCgzva7i1ZIsxmpWtyJ94eowcOHHj88cel49w7b+DeJens3mDUXhdy8u7QDnflSkfbvcmTeTlUj3hvjF65csXRq33cxZ1JZ/fVWdKyIulvu6fLihy9lIBuc+CAUKLDjlvzxhiV1p4HBwc7bu25O3LCAsqqqqpZs2Z1f5F754Wtrr+E32M1N4u9e8XRo4J/+ffgdTFaUlISHx8vHclpaWnHjh1TuiLX4oR2Ht1pueS+DaU8ytmzIiWlo7s+IPr2Fb/8pWhu7vjtkCEiLa3rS+LjRVKSk8tUnBfFaHV19U9/+lPp6I2Jidm6davSFbmuLkln9waj928A6uimf9Qtx4+LYcMEIJ57ThQViY0bxcyZAhCJieLaNSGECA8XM2Z0fVVsrEhMdH6xyvKKGG1oaNDpdP7+/gBCQkIMBoOZE5EP0jnpHHQ+WFtb26UdfVVVlaNbUFN3zZ4tAPHBB98/0t4u5s8XgFi1SgjG6Pe8IkbHjRsHwMfHZ9GiRd7e76eHnHDjjc6rSG1zUI64IQr1wNdfC5VKPPFE18cbGkRoqIiKEoIx+j2viNF//OMf06ZN+4qNGHqry23g7N5gVGq7N27cuHnz5jni9nzUYx99JADxt7/d5Vdz5wpAmEwiPFyMHSu2bLntZ9gwxqhn4ioX+To3GHXQTYmtVivfKVfx9tsCEHe9jDonRwDi1CkRHt4x9dTlx/tiVA0vIC0cJDmk6KyqqpI6B27evDk+Pj43N7elpcWOu+A75SrCwgDAZLrLr+rqoFJh6FAASE3FhQu3/Xx360Ov4hUxSvYSGBiYm5t78uRJjUbT0tKyYsWKmJiYwsJCIYTSpZFdxcQAwL59XR9va0NZGaKiEBAAAH37IjLyth8/P2eX6gIYo9RjkZGRhYWFu3fvHjduXE1NzYIFC6ZPn/7VV18pXRfZT2oqRo7EunWoqbnt8fXrUVuLxYsVKstFMUapl6ZOnVpZWSm13SsrKxs/fvz8+fPr6uqUrovswd8f776LpiYkJWHdOpSV4ZNPkJ2NnBwkJ+OFF5Suz7Wo+HGMZGpsbDQYDEaj0Ww2BwUFvfTSS0uXLpW68JF7+/xzLFyI06c7/tinDxYuRF4epDc3IgJjxqC09LaXxMcjIACVlc4uVVH/B58Gsf7M/NLGAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c33990>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CC=CCO.CCO\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c33a30>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n"
     ]
    }
   ],
   "source": [
    "# Etherification reaction with unspecified chirality, template could have specified\n",
    "reaction_smarts = '[CH:1]([CH3:2])=[CH:3]([CH2:4][O:5][C:6])>>[CH:1]([CH3:2])=[CH:3][CH2:4][OH:5].O[C:6]'\n",
    "reactant_smiles = 'C(\\C)=C\\COCC'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [C:1][CH:2]([CH3:3])[O:4][C:5]>>[C:1][CH:2]([CH3:3])[OH:4].O[C:5]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c4e440>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCC[C@@H](OCC)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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9NDnn39uGunu7p4+ffq2bdskTHXntFptnzL91y2RhHXmwsOOEydO7N86ITtSU1OTkJAQExMzbdo0fuWcXLFGRWUwGObOndt7a6LS0tKAgIDa2lrTSElJyZIlS6RI10837y93u1089u7dK+wh7e7u7lDrzLmYSd5Yo2JLSUmJjY3tPZKamhoTEyNVHkv55y2RLl++bHrYcdq0abe7i01kj1ijVldaWtr7KaCurq7w8PBdu3b1HomIiPj666+lSGdht9wSKSMjY8iQIVxnTnLFGrW63377bejQob1vLBQUFAwbNuzvv/82jZw8eXLy5Mm2f2fpDtXX17/99tvCNzwLl0GFSq2qqpI6GpHlKYxGI8jS/v77b9MGHwCSkpIuXrz4zTffmEbefffd6urq7777zjRiMBicnZ1FTWlljY2NmzZtys3N9ff3X7hw4dKlS02VSiQnrFHLMxqNYWFhH374YWxsrDCi0+nCw8PXr19vegRQp9NFRER88MEHzzzzjHRJxdDT02Na7kMkS6xRqzh27Nhzzz1XVFRkeuYnLy8vLi7u9OnTppGjR48uWrTo3LlzwtJCIrJTrFFrWb58uV6v/+yzz0wjb775Znt7+/bt200jdXV1pm3nichOsUatpb29PSwsLD09fc6cOcJIR0dHaGjoli1b5s6dK202IrIg1qgVHTp06JVXXikqKhIepgaQm5u7dOnS4uJi4UsuiUgGWKPWtXTpUnd39y1btphGjhw5MmPGDN6zJpIN1qh1abXa0NDQr776atasWVJnISKr4EoU6xo4cODWrVtfeuml9vZ2qbMQkVXIar23bXr88cf/+uuv7u5uqYMQkVVwUk9EZBZO6omIzPJ/y/D+6wjWgUIAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c47030>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@H](C)O.CCO\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x115c47030>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n"
     ]
    }
   ],
   "source": [
    "# Etherification reaction with unspecified chirality, template could have specified\n",
    "reaction_smarts = '[C:1][CH:2]([CH3:3])[O:4][C:5]>>[C:1][CH:2]([CH3:3])[OH:4].O[C:5]'\n",
    "reactant_smiles = 'CCCC[C@@H](OCC)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Testing chiral transformations with achiral molecules\n",
    "\n",
    "When the transformation expects a chiral reaction center but the input molecule is achiral, the template should not apply. In the retrosynthetic direction, this means that a stereospecific reaction should not be suggested as a way of synthesizing a racemic product."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['CC(Br)C[CH2:3][CH2:2][CH3:1]']\n",
      "Added 1 map numbers to product\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 5 is achiral in mol, but specified in template\n",
      "Chirality violated! Should not have gotten this match\n",
      "Reaction SMARTS: [C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@@H:2]([CH3:3])Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119feeb20>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCCC(I)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119feeb20>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCCC(C)Br\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119feead0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n"
     ]
    }
   ],
   "source": [
    "# SN2 with inversion of a tetrahedral center\n",
    "reaction_smarts = '[C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@@H:2]([CH3:3])Br'\n",
    "reactant_smiles = 'CCCCC(I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{(1, 2): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (2, 1): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (3, 4): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (4, 3): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "2 = 3\n",
      "Front specification: ENDUPRIGHT\n",
      "Back specification: ENDDOWNRIGHT\n",
      "--> locally CIS\n",
      "All bond specs for this template:\n",
      "[((1, 2, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((2, 1, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((1, 2, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((2, 1, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((4, 3, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((4, 3, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT))]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "4 = 5\n",
      "Using naive RunReactants, 2 outcomes\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 6 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(1, 2, 3, 4)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Reactant bond chirality does not match template!\n",
      "Based on map numbers...\n",
      "  rct: (1, 2, 3, 4) -> (rdkit.Chem.rdchem.BondDir.NONE, rdkit.Chem.rdchem.BondDir.NONE)\n",
      "  tmp: (1, 2, 3, 4) -> (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)\n",
      "skipping this outcome, should not have matched...\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 6 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(4, 3, 2, 1)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Reactant bond chirality does not match template!\n",
      "Based on map numbers...\n",
      "  rct: (4, 3, 2, 1) -> (rdkit.Chem.rdchem.BondDir.NONE, rdkit.Chem.rdchem.BondDir.NONE)\n",
      "  tmp: (4, 3, 2, 1) -> (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)\n",
      "skipping this outcome, should not have matched...\n",
      "Reaction SMARTS: [C:1]/[CH:2]=[CH:3]\\[C:4]>>[C:1][C:2]#[C:3][C:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4ad0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCC=CCC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4ad0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCC#CCCC\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4a80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n"
     ]
    }
   ],
   "source": [
    "# Prepare a cis alkene from an alkyne\n",
    "reaction_smarts = '[C:1]/[CH:2]=[CH:3]\\[C:4]>>[C:1][C:2]#[C:3][C:4]'\n",
    "reactant_smiles = 'CCCC=CCC'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Testing chiral transformations with chiral molecules\n",
    "\n",
    "Here is where the cases get particularly tricky. They've been broken into a number of subsections depending on the type of transformation."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Reaction expects cis double bond"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Molecule has explicit cis double bond"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{(1, 2): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (2, 1): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (3, 4): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (4, 3): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "2 = 3\n",
      "Front specification: ENDUPRIGHT\n",
      "Back specification: ENDDOWNRIGHT\n",
      "--> locally CIS\n",
      "All bond specs for this template:\n",
      "[((1, 2, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((2, 1, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((1, 2, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((2, 1, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((4, 3, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((4, 3, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT))]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "4 = 5\n",
      "Using naive RunReactants, 2 outcomes\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 6 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(1, 2, 3, 4)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 4\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 5\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 6\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 2 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [CH3:1][CH2:2][CH2:3][C:4]#[C:5][CH2:6][CH3:7]\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 6 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(4, 3, 2, 1)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 6 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 6\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 5\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 4\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 2 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [CH3:1][CH2:2][CH2:3][C:4]#[C:5][CH2:6][CH3:7]\n",
      "Reaction SMARTS: [C:1]/[CH:2]=[CH:3]\\[C:4]>>[C:1][C:2]#[C:3][C:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4bc0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCC/C=C\\CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4cb0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCC#CCCC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff42b0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCC#CCCC\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{(1, 2): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (2, 1): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (3, 4): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (4, 3): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "2 = 3\n",
      "Front specification: ENDUPRIGHT\n",
      "Back specification: ENDDOWNRIGHT\n",
      "--> locally CIS\n",
      "All bond specs for this template:\n",
      "[((1, 2, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((2, 1, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((1, 2, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((2, 1, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((4, 3, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((4, 3, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT))]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "4 = 5\n",
      "Using naive RunReactants, 2 outcomes\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 6 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(1, 2, 3, 4)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Reactant bond chirality does not match template!\n",
      "Based on map numbers...\n",
      "  rct: (1, 2, 3, 4) -> (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)\n",
      "  tmp: (1, 2, 3, 4) -> (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)\n",
      "skipping this outcome, should not have matched...\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 6 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(4, 3, 2, 1)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Reactant bond chirality does not match template!\n",
      "Based on map numbers...\n",
      "  rct: (4, 3, 2, 1) -> (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)\n",
      "  tmp: (4, 3, 2, 1) -> (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)\n",
      "skipping this outcome, should not have matched...\n",
      "Reaction SMARTS: [C:1]/[CH:2]=[CH:3]\\[C:4]>>[C:1][C:2]#[C:3][C:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4490>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCC/C=C/CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4440>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCC#CCCC\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff42b0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n"
     ]
    }
   ],
   "source": [
    "# Prepare a cis alkene from an alkyne\n",
    "reaction_smarts = '[C:1]/[CH:2]=[CH:3]\\[C:4]>>[C:1][C:2]#[C:3][C:4]'\n",
    "reactant_smiles = 'CCC/C=C\\CC' # explicit cis\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'CCC/C=C/CC' # explicit trans\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Molecule has an implicit double bond inside a ring"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{(1, 2): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (2, 1): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (3, 4): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (4, 3): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "2 = 3\n",
      "Front specification: ENDUPRIGHT\n",
      "Back specification: ENDDOWNRIGHT\n",
      "--> locally CIS\n",
      "All bond specs for this template:\n",
      "[((1, 2, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((2, 1, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((1, 2, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((2, 1, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((4, 3, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((4, 3, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT))]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "8 = 9\n",
      "Implicit cis found\n",
      "Using naive RunReactants, 2 outcomes\n",
      "Processing ['C1#CC[CH2:11][CH:1]([CH2:2][CH2:3][CH3:4])[CH2:5][CH2:6]C1']\n",
      "Added 0 map numbers to product\n",
      "atom 7 is achiral & achiral -> match\n",
      "atom 8 is achiral & achiral -> match\n",
      "atom 9 is achiral & achiral -> match\n",
      "atom 10 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(7, 8, 9, 10)\n",
      "converted matched atom map nums:\n",
      "(1, 2, 3, 4)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 7 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 7\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 8\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 9 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 9\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 10 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 10\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 outside of template, copy chirality from reactants\n",
      "For mapnum 1, copying src CHI_UNSPECIFIED chirality tag to new\n",
      "atom 1 is achiral & achiral -> match\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 2 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 11 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [CH:1]1([CH2:2][CH2:3][CH3:4])[CH2:5][CH2:6][CH2:7][C:8]#[C:9][CH2:10][CH2:11]1\n",
      "Processing ['C1#CC[CH2:11][CH:1]([CH2:2][CH2:3][CH3:4])[CH2:5][CH2:6]C1']\n",
      "Added 0 map numbers to product\n",
      "atom 10 is achiral & achiral -> match\n",
      "atom 9 is achiral & achiral -> match\n",
      "atom 8 is achiral & achiral -> match\n",
      "atom 7 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(7, 8, 9, 10)\n",
      "converted matched atom map nums:\n",
      "(4, 3, 2, 1)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 10 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 10\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 9 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 9\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 8 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 8\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 7\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 11 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 outside of template, copy chirality from reactants\n",
      "For mapnum 1, copying src CHI_UNSPECIFIED chirality tag to new\n",
      "atom 1 is achiral & achiral -> match\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 2 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [CH:1]1([CH2:2][CH2:3][CH3:4])[CH2:5][CH2:6][CH2:7][C:8]#[C:9][CH2:10][CH2:11]1\n",
      "Reaction SMARTS: [C:1]/[CH:2]=[CH:3]\\[C:4]>>[C:1][C:2]#[C:3][C:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff48f0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: C1(CCC)CCCC=CCC1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4350>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC1CCC#CCCC1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4350>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCC1CCC#CCCC1\n"
     ]
    }
   ],
   "source": [
    "# Prepare a cis alkene from an alkyne\n",
    "reaction_smarts = '[C:1]/[CH:2]=[CH:3]\\[C:4]>>[C:1][C:2]#[C:3][C:4]'\n",
    "reactant_smiles = 'C1(CCC)CCCC=CCC1' # implicit cis\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Reaction expects trans double bond"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{(1, 2): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (2, 1): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (3, 4): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (4, 3): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "2 = 3\n",
      "Front specification: ENDUPRIGHT\n",
      "Back specification: ENDUPRIGHT\n",
      "-> locally TRANS\n",
      "All bond specs for this template:\n",
      "[((1, 2, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((2, 1, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((1, 2, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((2, 1, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((3, 4, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((4, 3, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((4, 3, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT))]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "8 = 9\n",
      "Implicit cis found\n",
      "Using naive RunReactants, 2 outcomes\n",
      "Processing ['C1#CC[CH2:11][CH:1]([CH2:2][CH2:3][CH3:4])[CH2:5][CH2:6]C1']\n",
      "Added 0 map numbers to product\n",
      "atom 7 is achiral & achiral -> match\n",
      "atom 8 is achiral & achiral -> match\n",
      "atom 9 is achiral & achiral -> match\n",
      "atom 10 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(7, 8, 9, 10)\n",
      "converted matched atom map nums:\n",
      "(1, 2, 3, 4)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Reactant bond chirality does not match template!\n",
      "Based on map numbers...\n",
      "  rct: (1, 2, 3, 4) -> (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)\n",
      "  tmp: (1, 2, 3, 4) -> (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)\n",
      "skipping this outcome, should not have matched...\n",
      "Processing ['C1#CC[CH2:11][CH:1]([CH2:2][CH2:3][CH3:4])[CH2:5][CH2:6]C1']\n",
      "Added 0 map numbers to product\n",
      "atom 10 is achiral & achiral -> match\n",
      "atom 9 is achiral & achiral -> match\n",
      "atom 8 is achiral & achiral -> match\n",
      "atom 7 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(7, 8, 9, 10)\n",
      "converted matched atom map nums:\n",
      "(4, 3, 2, 1)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Reactant bond chirality does not match template!\n",
      "Based on map numbers...\n",
      "  rct: (4, 3, 2, 1) -> (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)\n",
      "  tmp: (4, 3, 2, 1) -> (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)\n",
      "skipping this outcome, should not have matched...\n",
      "Reaction SMARTS: [C:1]/[CH:2]=[CH:3]/[C:4]>>[C:1][C:2]#[C:3][C:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fee710>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: C1(CCC)CCCC=CCC1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fee080>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC1CCC#CCCC1\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fee080>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{(1, 2): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (2, 1): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (3, 4): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (4, 3): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "2 = 3\n",
      "Front specification: ENDUPRIGHT\n",
      "Back specification: ENDUPRIGHT\n",
      "-> locally TRANS\n",
      "All bond specs for this template:\n",
      "[((1, 2, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((2, 1, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((1, 2, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((2, 1, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((3, 4, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((4, 3, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((4, 3, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT))]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "4 = 5\n",
      "Using naive RunReactants, 2 outcomes\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 6 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(1, 2, 3, 4)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Reactant bond chirality does not match template!\n",
      "Based on map numbers...\n",
      "  rct: (1, 2, 3, 4) -> (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)\n",
      "  tmp: (1, 2, 3, 4) -> (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)\n",
      "skipping this outcome, should not have matched...\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 6 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(4, 3, 2, 1)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Reactant bond chirality does not match template!\n",
      "Based on map numbers...\n",
      "  rct: (4, 3, 2, 1) -> (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)\n",
      "  tmp: (4, 3, 2, 1) -> (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)\n",
      "skipping this outcome, should not have matched...\n",
      "Reaction SMARTS: [C:1]/[CH:2]=[CH:3]/[C:4]>>[C:1][C:2]#[C:3][C:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff48f0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCC/C=C\\CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fee2b0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCC#CCCC\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119ff4b70>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{(1, 2): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (2, 1): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, (3, 4): rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, (4, 3): rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "2 = 3\n",
      "Front specification: ENDUPRIGHT\n",
      "Back specification: ENDUPRIGHT\n",
      "-> locally TRANS\n",
      "All bond specs for this template:\n",
      "[((1, 2, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((2, 1, 3, 4), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((1, 2, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((2, 1, 4, 3), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((3, 4, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((3, 4, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)), ((4, 3, 1, 2), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT)), ((4, 3, 2, 1), (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT))]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Found a double bond with potential cis/trans (based on degree)\n",
      "4 = 5\n",
      "Using naive RunReactants, 2 outcomes\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 3 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 6 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(1, 2, 3, 4)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 4\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 5\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 6 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 6\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 2 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [CH3:1][CH2:2][CH2:3][C:4]#[C:5][CH2:6][CH3:7]\n",
      "Processing ['C(#CC[CH3:7])C[CH2:2][CH3:1]']\n",
      "Added 0 map numbers to product\n",
      "atom 6 is achiral & achiral -> match\n",
      "atom 5 is achiral & achiral -> match\n",
      "atom 4 is achiral & achiral -> match\n",
      "atom 3 is achiral & achiral -> match\n",
      "Chirality matches! Just checked with atom_chirality_matches\n",
      "matched atom map nums from atoms_rt mapnums\n",
      "(3, 4, 5, 6)\n",
      "converted matched atom map nums:\n",
      "(4, 3, 2, 1)\n",
      "rxn required rt bond defs:\n",
      "{(1, 2, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (2, 1, 3, 4): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (1, 2, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (2, 1, 4, 3): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (3, 4, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (3, 4, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT), (4, 3, 1, 2): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDDOWNRIGHT), (4, 3, 2, 1): (rdkit.Chem.rdchem.BondDir.ENDUPRIGHT, rdkit.Chem.rdchem.BondDir.ENDUPRIGHT)}\n",
      "Converted all outcomes to single molecules\n",
      "No missing bonds\n",
      "Atom 6 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 6\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 5 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 5\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 4 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 4\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 3 could not have been chiral in reactant template\n",
      "Atom {} also could not have been chiral in product template 3\n",
      "...so, copy chirality from reactant instead\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 7 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 2 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "Atom 1 outside of template, copy chirality from reactants\n",
      "New chiral tag CHI_UNSPECIFIED\n",
      "After attempting to re-introduce chirality, outcome = [CH3:1][CH2:2][CH2:3][C:4]#[C:5][CH2:6][CH3:7]\n",
      "Reaction SMARTS: [C:1]/[CH:2]=[CH:3]/[C:4]>>[C:1][C:2]#[C:3][C:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fef0d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCC/C=C/CC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fef440>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCC#CCCC\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x119fef300>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCC#CCCC\n"
     ]
    }
   ],
   "source": [
    "# Prepare a trans alkene from an alkyne\n",
    "reaction_smarts = '[C:1]/[CH:2]=[CH:3]/[C:4]>>[C:1][C:2]#[C:3][C:4]'\n",
    "reactant_smiles = 'C1(CCC)CCCC=CCC1' # implicit cis\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'CCC/C=C\\CC' # explicit cis\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'CCC/C=C/CC' # explicit trans\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Reaction expects tetrahedral center"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### ...that will be inverted"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validated rxn without errors\n",
      "Added 0 map nums to unmapped reactants\n",
      "bond dirs by mapnum\n",
      "{}\n",
      "{}\n",
      "Looking at initializing template frag\n",
      "All bond specs for this template:\n",
      "[]\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Initialized reactants, assigned map numbers, stereochem, flagpossiblestereocenters\n",
      "Using naive RunReactants, 1 outcomes\n",
      "Processing ['CC(Br)C[CH2:3][CH2:2][CH3:1]']\n",
      "Added 1 map numbers to product\n",
      "atom 4 is achiral & achiral -> match\n",
      "[4, 7, 4, -1]\n",
      "[4, 6, 7, -1]\n",
      "CHI_TETRAHEDRAL_CCW\n",
      "CHI_TETRAHEDRAL_CW\n",
      "{'molAtomMapNumber': 5, '__computedProps': <rdkit.rdBase._vectNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE object at 0x119fbe2d0>, '_CIPRank': 1, '_CIPCode': 'R', 'tetra_possible': True}\n",
      "{'__computedProps': <rdkit.rdBase._vectNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE object at 0x119fbe2d0>, '_CIPRank': 5, '_ChiralityPossible': 1, '_CIPCode': 'S', 'molAtomMapNumber': 5}\n",
      "CHI_TETRAHEDRAL_CCW\n",
      "CHI_TETRAHEDRAL_CW\n",
      "pop from empty list\n",
      "[4, 7, 4, -1]\n",
      "[4, 6, 7, -1]\n"
     ]
    },
    {
     "ename": "KeyError",
     "evalue": "'Pop from empty set - this should not happen!'",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mIndexError\u001b[0m                                Traceback (most recent call last)",
      "\u001b[0;32m~/rdchiral/rdchiral/chiral.py\u001b[0m in \u001b[0;36matom_chirality_matches\u001b[0;34m(a_tmp, a_mol)\u001b[0m\n\u001b[1;32m    102\u001b[0m             \u001b[0mtmp_parity\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparity4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmapnums_tmp\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 103\u001b[0;31m             \u001b[0mmol_parity\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparity4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mmapnums_tmp\u001b[0m \u001b[0;32melse\u001b[0m \u001b[0monly_in_src\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mmapnums_mol\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    104\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mPLEVEL\u001b[0m \u001b[0;34m>=\u001b[0m \u001b[0;36m10\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtmp_parity\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/rdchiral/rdchiral/chiral.py\u001b[0m in \u001b[0;36m<listcomp>\u001b[0;34m(.0)\u001b[0m\n\u001b[1;32m    102\u001b[0m             \u001b[0mtmp_parity\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparity4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmapnums_tmp\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 103\u001b[0;31m             \u001b[0mmol_parity\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparity4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mmapnums_tmp\u001b[0m \u001b[0;32melse\u001b[0m \u001b[0monly_in_src\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mmapnums_mol\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    104\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mPLEVEL\u001b[0m \u001b[0;34m>=\u001b[0m \u001b[0;36m10\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtmp_parity\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mIndexError\u001b[0m: pop from empty list",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001b[0;31mKeyError\u001b[0m                                  Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-16-689a98762506>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      2\u001b[0m \u001b[0mreaction_smarts\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'[C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@@H:2]([CH3:3])Br'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      3\u001b[0m \u001b[0mreactant_smiles\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'CCCC[C@@H](I)C'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0mshow_outcomes\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreaction_smarts\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreactant_smiles\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      5\u001b[0m \u001b[0msep_bar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      6\u001b[0m \u001b[0mreaction_smarts\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'[C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@H:2](Br)[CH3:3]'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m<ipython-input-6-a31ba82c9ee4>\u001b[0m in \u001b[0;36mshow_outcomes\u001b[0;34m(reaction_smarts, reactant_smiles)\u001b[0m\n\u001b[1;32m      9\u001b[0m         \u001b[0moutcomes_rdkit\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0madd\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'.'\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjoin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msorted\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mChem\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mMolToSmiles\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mx\u001b[0m \u001b[0;32min\u001b[0m \u001b[0moutcome\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     10\u001b[0m     \u001b[0;31m# rdchiral version\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 11\u001b[0;31m     \u001b[0moutcomes_rdchiral\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrdchiralRunText\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreaction_smarts\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreactant_smiles\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     12\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     13\u001b[0m     \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Reaction SMARTS: {}'\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreaction_smarts\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/rdchiral/rdchiral/main.py\u001b[0m in \u001b[0;36mrdchiralRunText\u001b[0;34m(reaction_smarts, reactant_smiles, **kwargs)\u001b[0m\n\u001b[1;32m     83\u001b[0m     \u001b[0mrxn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrdchiralReaction\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreaction_smarts\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     84\u001b[0m     \u001b[0mreactants\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrdchiralReactants\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreactant_smiles\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 85\u001b[0;31m     \u001b[0;32mreturn\u001b[0m \u001b[0mrdchiralRun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrxn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreactants\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     86\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     87\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mrdchiralRun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrxn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreactants\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mkeep_mapnums\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcombine_enantiomers\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreturn_mapped\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/rdchiral/rdchiral/main.py\u001b[0m in \u001b[0;36mrdchiralRun\u001b[0;34m(rxn, reactants, keep_mapnums, combine_enantiomers, return_mapped)\u001b[0m\n\u001b[1;32m    173\u001b[0m         \u001b[0mprev\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    174\u001b[0m         \u001b[0mskip_outcome\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 175\u001b[0;31m         \u001b[0;32mfor\u001b[0m \u001b[0mmatch\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0matom_chirality_matches\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0matoms_rt\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0matoms_r\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0matoms_rt\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    176\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mmatch\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    177\u001b[0m                 \u001b[0;32mif\u001b[0m \u001b[0mPLEVEL\u001b[0m \u001b[0;34m>=\u001b[0m \u001b[0;36m2\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Chirality violated! Should not have gotten this match'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/rdchiral/rdchiral/main.py\u001b[0m in \u001b[0;36m<genexpr>\u001b[0;34m(.0)\u001b[0m\n\u001b[1;32m    173\u001b[0m         \u001b[0mprev\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    174\u001b[0m         \u001b[0mskip_outcome\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 175\u001b[0;31m         \u001b[0;32mfor\u001b[0m \u001b[0mmatch\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0matom_chirality_matches\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0matoms_rt\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0matoms_r\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0matoms_rt\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    176\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mmatch\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    177\u001b[0m                 \u001b[0;32mif\u001b[0m \u001b[0mPLEVEL\u001b[0m \u001b[0;34m>=\u001b[0m \u001b[0;36m2\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Chirality violated! Should not have gotten this match'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/rdchiral/rdchiral/chiral.py\u001b[0m in \u001b[0;36matom_chirality_matches\u001b[0;34m(a_tmp, a_mol)\u001b[0m\n\u001b[1;32m    121\u001b[0m         \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmapnums_tmp\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    122\u001b[0m         \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmapnums_mol\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 123\u001b[0;31m         \u001b[0;32mraise\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Pop from empty set - this should not happen!'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;31mKeyError\u001b[0m: 'Pop from empty set - this should not happen!'"
     ]
    }
   ],
   "source": [
    "# SN2 with inversion of a tetrahedral center\n",
    "reaction_smarts = '[C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@@H:2]([CH3:3])Br'\n",
    "reactant_smiles = 'CCCC[C@@H](I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reaction_smarts = '[C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@H:2](Br)[CH3:3]'\n",
    "reactant_smiles = 'CCCC[C@@H](I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reaction_smarts = '[C:1][C@@H:2]([CH3:3])[I:4]>>[C:1][C@@H:2](Br)[CH3:3]'\n",
    "reactant_smiles = 'CCCC[C@@H](I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### ...that will be preserved\n",
    "In retro direction, this reaction is stereoretentive"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@H:2]([CH3:3])Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d896620>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCC[C@@H](I)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d896620>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@@H](C)Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d67dad0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCC[C@H](C)Br\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [C:1][C@@H:2]([CH3:3])[I:4]>>[C:1][C@@H:2]([CH3:3])Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d657ee0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCC[C@@H](I)C\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAASZElEQVR4nO3da1BT57oH8HdBIOFi0KqAFwpFWy9YQKVWUVHGWmtLrduR7s500unoOXHOnjGnMz0zcc6ZabSe9qTTaTedzp5OOnVascfWnO5esK1avFQRU1EkchMFFFEEFVC5BEkIOR9eyc4GxGStZL0rWf/fJ1TCesbAn/dZl+flXC4XAQAAvsJYFwAAENwUrAsIDv/9p2TngMP9x7j46TMX5L7wrzsUkSqGVQGAFCBGveJyuRJT56Ute5kQYuu+01R1qvzgnnCFYu2W91iXBgCMIUa9lfhE2rL8rfRj54Djb39Z0VhxnG1JACAFODfKR7giQj0xkeMe/O/t+o+XK4/9/ce//vvf/rKCbWEAID6sRr1l6+psbawihPR1322qKm2uKXvuzf+k/3T9YnlLvVUVMy49dyPTGgGAAcSoty6dKb50ptj9R2WMetpT891/nDR9pvavBxWRShalAQBLiFFvzV328prN2wkhA47+jusNRwr/Z++ON97eY41UxRBCnl7xJ2QogDwhRr0VqYxWT5pCP35sSopCqSr8r1drS3/OXPVnQkjUuPFMqwMAZnCJiaeO642EkJi4SawLAQDGsBr1VntLw7lD/0sIGbD315765Wq1RT1p6oz5uDQPIHeIUe9w3PW68ut15fTj8fFJ83LWr/mX7WHhiqF/51iWBwDscBhNwkP79YZDX2yfkPD4i//2PutaAIAxrEb5GLD3N5QfTUiZw7oQAGAPl5j4UMWMI4T023pYFwIA7CFG+VBGjyOE3Ld1sS4EANhDjPJBY7Tf1oMzywCAGOUjLFwRoYxyDTod/TbWtQAAY4hRnpQxakJIf28360IAgDHEKE+qB309YhRA7hCjPOEqEwBQiFGeHlxlQlMPIHuIUZ5UMWqC1SgAIEZ5c9/zxLoQAGAMMcrTUFOP1SiA3CFGecLzoABAIUZ5wpV6AKAQozwpo3H7PQAQghjljTb1WI0CAGKUpwerUTzFBCB7iFGelNGxBE09ACBGecPt9wBAIUZ5wu33AEAhRnkailGsRgHkDjHKU4QyKkwRMWDvdzrsrGsBAJYQo/wpo2IJLtYDyB5ilL+hq0yIUQBZQ4zyp8QAfABAjAqBIU8AQBCjQgw9D4rVKICsIUb5w/OgAEAQo0JgOyYAIIhRITDkCQAIYlSIoaYez4MCyBpilL8HQ56wGgWQN8Qofw9uv8cNTwDyhhjlD0OeAIAgRoXAkCcAIIhRIVR0c1Dc8AQgb4hR/pQx9Eo9VqMAsoYY5U+Fc6MAgBgVIjI6lnBcf1+PyzXIuhYAYAYxyh/HhUWqYojLZceCFEDGEKOC/N/FyPcO3mprv8O6EABgBjEqiN1JHAPOri5cZQKQL8SoIHFxcYQQxCiAnCFGBVGr1YSQe/fusS4EAJhBjApCV6OIUQA5Q4wKghgFAMSoIDg3CgCIUUFwbhQAEKOCYDUKAIhRQbAaBQDEqCC4xAQAiFFBEKMAgBgVBOdGAQAxKgjOjQIAYlQQNPUAwLlcLtY1BDG73a5UKhUKhcPhYF0LALCB1aggkZGRKpVqYGDAZrOxrgUA2ECMCoWrTAAyhxgVCleZAGQOMSoUrjIByBxiVCjEKIDMIUaFwrlRAJlDjAqFc6MAkuJ0Ovft2yfmrZyIUaHQ1ANIR01NzdKlS1977bUvv/xStIMiRoVCjAJIgcPheO+99xYuXHj69OmkpKRp06aJdmiFaEcKVbSpx7lRAIaqqqo2bdp09uxZjuM0Gs0nn3wyYcIE0Y6O1ahQWI0CMORwOD744IOsrKyzZ8+mpKT89ttvhYWFYmYowWpUOMQoACtWq3XTpk0VFRUcx2m12o8++ig2Nlb8MrAaFQo3PAGI7/79+9u2bcvKyqqoqJgxY8bRo0dNJhOTDCVYjQqHG54ARHbq1KnNmzfX1dWFhYVptdqPP/44JiaGYT1YjQqFph5ANDabbdu2bTk5OXV1dWlpaRaLxWQysc1QgtWocIjRkPHrr782NjZaLJYtW7asWLGCdTkwXElJyebNm+vr6xUKhV6v37Fjh1KpZF0UIYQQFwjT09NDCImOjmZdCPDX0dHxxhtvEEIUigcLi9zc3BMnTrCuCx64d++eTqcLCwsjhKSnp589e5Z1Rf8EMeoH9GfPbrezLgT42L9/P71VOyoq6t13333//ffdt8ssXbr0yJEjrAuUuwMHDiQlJRFCIiIi9Hp9f38/64qGQ4z6Af2pa29vZ10I+ObmzZsajcadmHV1dfTvu7u7jUajZ5gePXqUbanydOfOHa1WS9+FxYsX19TUsK5odIhRP0hJSSGENDY2si4EfGA2mydPnkxPyBiNRqfTOewTurq6jEbj+PHj3WF67NgxFpXKlGeXYDQaBwYGWFf0UIhRP8jIyCCEnDt3jnUh4JXW1tYNGzbQcMzJyamvrx/jk0eG6e+//y5aqfL0sC5BshCjfpCTk0MIwU9XUDCbzRMnTiSExMXFmUymwcFBb141LEyfe+6506dPB7pUeXpklyBBiFE/yMvLI4T89NNPrAuBsbS0tKxbt47m4Nq1a5ubm339Ch0dHQaDgd7ihjD1O5+6BElBjPrB66+/TggpLCxkXQiMbnBw0GQy0efNxo8fbzKZhHy19vb2YWFaVlbmr1Jli1+XIBGIUaFKSkqmTJkyefLkWbNmFRUVsS4Hhrt8+fKqVato5OXl5V2/ft0vX5aGKY1mGqZnzpzxy1eWG+FdAnOIUf6amppeffVVjuPoeRz6fZCdnX3o0CHWpYHLNbQIpeMq4uPjd+/e7fdD3L59G2HKm3+7BIYQo3z09vYaDIaoqCj6w7Ny5cr6+vqCgoLExET6N0uWLMHKlK2GhoaVK1fStyM/P//27duBO9bIMJXaYzYSFKAugQnEqG8GBwfNZnNycjJ9+zmO0+v17jvaenp6PMM0OzsbYSo+h8NRUFBA+4PExMTvv/9enOPevn1br9fT43Icl5eXV15eLs6hg4sIXYLIEKM+KCsry87OJkPi4+NH7d9pmCYkJLhvfEOYiqaqquqZZ55xL0I7OjpELuDWrVvDwhQ3FHtqaGhwj30JdJcgGsSoV1paWrRaLZ2MQOXm5t64cWOMl4wM08OHD4tWsAw5HA6j0UhH/iQnJ7M9Q03DlJ72QZhSrLoEESBGH8FmsxmNxnHjxrkDNDw83GAweHlXMH06+7HHHkOYBtT58+cXLFhAM0ur1XZ1dbGuyOVyuW7evOkO07CwsLy8vIqKCtZFscG8SwgoxOhYioqK6PPybgkJCcXFxb5+nZGjLjA3yF/sdrvRaIyMjCSEPPHEExL8jx0Wpvn5+RcuXGBdlHgk1SUECGJ0dOXl5cuXLyf/bNWqVa2trby/JuYG+Z3FYpkzZw6NJ61W293dzbqih2pra9Pr9SqVSlZharVaJdgl+B1idLgbN268+eabnqdBCSEKhcJoNPrlyQr6dLZnmGJuEA82m02v14eHhxNCZs6cGSwDDZqbm3U6nWeYSn/uBj+0S4iIiCCEpKamSrBL8CPE6D/09/cXFBS47/5zmz59eklJiX+PhblBQpw8eXLWrFn015ter+/r62NdkW9GhunFixdZF+VPQdQl+AVi9IGioqLU1FQyQl5eXuDmMY+cG/THH38E6Fihobe3V6/X015h3rx5Qf0w+9WrV3U6HT1pGDJhOqxLOH78OOuKxIAYdZ07d27U/csUCoX3V+SFwNwgLx06dIg++CDZzSR4GBmmly5dYl0UTyUlJUHdJfAm6xhtb2/X6XT0N+cwSUlJpaWlIheDuUEPc/fuXa1WS8cXZGRkhN7TQU1NTe4wjYiI0Gg0wRWmnl3C008/LbdvXZnGqN1uLygocGfWMOvWrWN1XxvmBo30yy+/TJ8+nRCiUqkMBkMIbx3Y1NSk1WrpDok0TINi5ubBgwdDr0vwiRxjtLi4eO7cuaMGqB+vyAuBuUGU545mS5Ysqa2tZV2RGK5cuTIsTBsaGlgXNbphXYJsn9SSV4xeuHBh7dq1owYoISQ5OdlisbCu8R9kPjeoqKho6tSpJBh2NAsE6YepfLqER5JLjHZ0dOh0OvpNOar169d3dnayLnMUMpwb1NbWtnHjRvq+LFu2LASuX/N2+fLlYWEqhQ1oOzs7ZdgljCH0Y9Rut5tMpkmTJj0sQJVKZUFBAesyH2Hk3KBQDVOz2UzfrCDa0SzQaJjSa6GRkZFarfbatWusipF5lzCqEI/R4uLitLS0hwUoISQlJSWIbtUM7blBra2t69evp+/LmjVrrl69yroiaamtrdVoNJ5hKvKoY3QJDxOyMXrx4kW6YecYNmzYcOfOHdaV+iwk5waZzWY6BysYdzQTE6swdXcJarW6oKAAXYKnEIzRzs5OvV5PR/4EdSM/tpFharVaWRfFx5UrV1avXk3flxdffJFhuxpEampqhoVpS0tLgI5148YNdAljC6kYdTgcJpMpPj5+7EXoU089FQLLN4qGaZDODaKbSdBZrhMmTAjeHc1Yqa6uDnSYokvwRujE6JEjR9LT08cOUELIxo0b7969y7pYPwvGuUGNjY25ubn0TcnPz7916xbrioIVDVP6BJFSqdRqtWPvy+Alzy7hpZdeQpcwhlCI0UuXLuXn5z8yQFUqVbA38mMLljB1Op0mkykmJoYQkpCQ8N1337GuKBRUVVXl5+e7t/vW6XS8wxRdgq+CO0a7u7sNBgN9Enlss2fPPn/+POt6xSDxuUH19fU5OTnuRWjgpmfJk2eYxsTE6HQ6XweNo0vgIVhj1Ol07t69271h3Ng0Gk1PTw/rkkUlwblBnptJTJky5ccff2RbTwirrKzkEaboEngLyhg9duxYRkaGNwEaFRUl55ZEOnODKisrs7KyCCEcx2k0mhDb0Uyazp8/PyxM29raHvbJ1dXVzz77LLoEfoIsRpubmzUajTcBSgiZM2dOZWUl65LZYzs3yHPLuZSUFB4bAoIQnmEaGxs7MkzRJQgXNDHa09NjMBjo9RM08jwwGXVRUVExf/58MrSjWchvJiFZVqvVM0z1ej1tCIZ1CdIcKyF9QRCjg4ODu3fvTkxM9DJAY2Njv/76a9ZVS5RoYdrX1+feTGLGjBnYA1UKLBbLmjVr6I9JXFxcbm4u3XJOmhtTBxGpx+jp06cXL17sTXrS37Rz586trq5mXbXUBXpuUGlp6ezZs8nQjmZoCyTFYrHQ56TnzZuHLsEvpBuj165d02g0NBy9b+R7e3tZFx40AjE3yHNHs7S0NGwqJVknT568cOGCpAbsBi8pxmhvb6/BYKBPi3vfyO/du5d14UGpsbFxWJjyHnVx4sSJJ598kgztaHb//n3/lgogTdKK0cHBQbPZTPd18d78+fODYssaKRM4N+jevXs6nY4+j5ieni6rKf0AEorRsrKy7OxsnwKUEKLRaGw2G+vaQwS/uUEHDhx4/PHHiYx3NAOZk0SMtrS0aLVaupbxnlqt/vbbb1nXHoK8D1O65Rw9f52ZmRkyc7MAfMI4Rm02m9FopEMQfLJw4UKp7fAVYh45N+jnn3+eNm0awWYSIHssY7SoqCglJcXXACWEaLVadI7iGHVukOeOZtnZ2UE04RQgENjEaHl5+fLly3kEaFxcnNlsZlKznFVUVLzyyis0TKOiouiez7GxsZ9++ik2kwDgXC4XjzjjrbW1dfv27bt27XI6nb6+Nisra9++fampqYEoDB6pqqpq586dP/zwQ2ZmZnR09BdffEFvbwKQOfFi1G63f/bZZ++8805XV5evr+U4buvWrR9++OHYOyyBCJqbm9VqdVxcnE9PRgCEMJFidP/+/W+99dbly5d5vHbixIlfffXVI7f5BABgQhHoA1RWVup0uuPHj/N7+dKlS7/55pukpCT/VgUA4C8BX41mZ2dbLBYeL+Q4Tq/X79y5k07QAACQpoAnlN1u5/GqyZMnFxYWvvDCC36vBwDAvwK+GrVarYsWLXI4HN6/JCcnZ+/evfTWbgAAifPt+UseMjMz3377bS8/meM4nU53+PBhZCgABAsxrtT39/cvWLCgtrZ27E9DIw8AwSjgq1FCiFKp3LVrFx118TArV660Wq3IUAAIOmLEKCFk8eLFW7duHfWf6BX5w4cPT506VZxiAAD8SLynmGw2W0ZGRkNDg+dfxsfH79mz5/nnnxenBgAAvxNpNUoIiY6O/vzzzz2fIFy9enVlZSUyFACCmngxSgjJzc3dsmULIUShUOzcufPgwYMJCQliFgAA4HdiT3jq6+srLS1Vq9WLFi0S87gAAAEidowCAISY/wfM5mIgzu61oAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d67dad0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@@H](C)Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d67dad0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCC[C@H](C)Br\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@@H:2](Br)[CH3:3]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d67dad0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCC[C@@H](I)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d859f80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@@H](C)Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d859f80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCC[C@H](C)Br\n"
     ]
    }
   ],
   "source": [
    "# SN2 with retention of a tetrahedral center\n",
    "reaction_smarts = '[C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@H:2]([CH3:3])Br'\n",
    "reactant_smiles = 'CCCC[C@@H](I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reaction_smarts = '[C:1][C@@H:2]([CH3:3])[I:4]>>[C:1][C@@H:2]([CH3:3])Br'\n",
    "reactant_smiles = 'CCCC[C@@H](I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reaction_smarts = '[C:1][C@H:2]([CH3:3])[I:4]>>[C:1][C@@H:2](Br)[CH3:3]'\n",
    "reactant_smiles = 'CCCC[C@@H](I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### ...that will be destroyed\n",
    "In retro direction, this reaction is stereospecific"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [C:1][C@H:2]([CH3:3])[I:4]>>[C:1][CH:2](Br)[CH3:3]\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAAP3UlEQVR4nO3da1BU5R8H8Gdxd7kKUgYkXlAMMw1MKRWaVUaLyRincWJqMpoJnHVynH3ZMs38M5uxNh0dHCebZaZx0lcxXWTLiEozRVaS3BXkUoAgiSA3We6ysOf/4hFmWy7CObvnOWfP9/MyaM9vVL48v3Oe83tUHMcRAADgK4B1AQAA8oYY5aP0/aHTyxysqwAASUCM8oIbIQAwDjEKACAIYhQAQBDEKACAIIhRAABBEKMAAIIgRgEABEGMAgAIghgFABAEMcqLinUBACAZiFE+1uwNjN2qLvvfEOtCAIA9NesCZGnsAddycTRy9TzWhQAAe1iN8qGdryKEOPvwaj0AIEZ50YSpCCEjiFEAQIzy83A12s9h1BMAIEb5UKmJOljFjZHRQeQogNIhRnnSzCcEfT0AIEZ5G+/rWdcBAKwhRnnSzMdTJgAgBDHKG41RZy9iFEDpEKM8abEaBQBCCGKUN83EnicAUDbEKE94kQkAKMQoT3jEBAAUYpQnTRghhDj7WNcBAKwhRnnShmM1CgCEIEZ5w4YnAKAQozxp8aQeAAghiFHeMCsPACjEKE/03ig2PAEAYpQnbHgCAAoxytP4hifEKIDSIUZ5UgerAtRk7AEZG2FdCgAwhRjlT4P3QQEAMSoEXqsHAIIYFQJDngCAIEaFwMN6ACCIUSG0eB8UABCjQjw8HBRNPYCyIUb5o++DYlYegMIhRvnDrDwAIIhRIbBvFAAIYlQIbRhiFAAQowJgwxMAEMSoEJiVBwAEMSoEHfKE1SiAwiFG+Rt/xMS6DgBgCjHKHzY8AQBBjAqBDU8AQBCjQmhCVURFnAMc52JdCgCwgxjlTxVANCEqwhHnABakAMqFGBXkaED6npao1u5m1oUAADOIUUGGSZ9zbKS3t5d1IQDADGJUkIiICEIIYhRAyRCjgoSHhxNCHA4H60IAgBnEqCB0NYoYBVAyxKggiFEAQIwKgnujAIAYFQT3RgEAMSoIVqMAgBgVBKtRAECMCoJHTACAGBUEMQoAiFFBcG8UABCjguDeKAAgRgVBUw8AKo7DrEz+RkZGAgMD1Wq10+lkXQsAsIHVqCBarTYoKGh0dHRwcJB1LQDABmJUKDxlAlA4xKhQeMoEoHCIUaHwlAlA4RCjQiFGARQOMSoU7o0CKBxiVCjcGwWQlLGxsa+//lrMrZyIUaHQ1ANIR1VVVWpq6ptvvnnq1CnRLooYFQoxCiAFTqfz0KFDGzZsKCsrW7JkSWxsrGiXVot2JX9Fm3rcGwVgqLKyMjs7u7y8XKVSZWVlHT9+PDIyUrSrYzUqFFajAAw5nc7PPvssOTm5vLw8Li7ul19+OX36tJgZSrAaFQ4xCsCK3W7Pzs622WwqlUqv1x89ejQsLEz8MrAaFQobngDENzw8nJubm5ycbLPZ4uPjL1y4YDabmWQowWpUOGx4AhBZaWlpTk5ObW1tQECAXq8/duxYaGgow3qwGhUKTT2AaAYHB3Nzc3U6XW1t7Zo1a6xWq9lsZpuhBKtR4RCjfuOnn35qaGiwWq179+7dsmUL63LA0+XLl3Nycurq6tRqtdFoPHjwYGBgIOuiCCGEcCBMf38/ISQkJIR1IcBfV1fXO++8QwhRqx8uLNLS0i5dusS6LnjI4XAYDIaAgABCSGJiYnl5OeuK/gMx6gX0Z29kZIR1IcDHDz/8QLdqBwcHf/zxx5988snEdpnU1NTz58+zLlDpioqKlixZQgjRaDRGo/HBgwesK/KEGPUC+lPX2dnJuhCYm3v37mVlZU0kZm1tLf3vfX19JpPJPUwvXLjAtlRlun//vl6vp38LmzZtqqqqYl3R1BCjXhAXF0cIaWhoYF0IzEFBQcETTzxBb8iYTKaxsTGPb+jt7TWZTAsWLJgI099//51FpQrl3iWYTKbR0VHWFU0LMeoFSUlJhJDr16+zLgRmpbW1ddeuXTQcdTpdXV3dDN88OUwvXrwoWqnKNF2XIFmIUS/Q6XSEEPx0yUJBQcHjjz9OCImIiDCbzS6Xazb/l0eYbt++vayszNelKtMjuwQJQox6QUZGBiGksLCQdSEwk5aWlp07d9IcfOWVV5qbm+f6CV1dXQcOHKBb3BCmXjenLkFSEKNesHv3bkLI6dOnWRcCU3O5XGazmb5vtmDBArPZLOTTOjs7PcL0zz//9FapisWvS5AIxKgXfPjhh0uXLl21apXFYmFdC3i6devWtm3baORlZGTcuXPHKx9Lw5RGMw3Ta9eueeWTlUZ4l8AcYtQ7NmzYQP8dpKSkFBcXsy4HOG58EUrHVURFRX311Vdev0RHRwfClDfvdgkMIUa9o7+/Py8vLyYmhv44bd68GStTturr67du3Ur/OjIzMzs6Onx3rclhKrXXbCTIR10CE4hRb/II05SUFISp+JxOZ15eXkhICCEkJibmu+++E+e6HR0dRqORXlelUmVkZPz111/iXFpeROgSRIYYnbNH7sCgYRodHT2x8Q1hKprKysrnn39+YhHa1dUlcgHt7e0eYYoNxe7q6+snxr74uksQDWJ0bk6dOmU0GmfznZPD9LfffvN1eUrmdDpNJhMd+bNs2TK2d6hpmAYHByNMJ7DqEkSAGJ2bnp6eOf3+pG9nP/bYYwhTn7px48b69etpZun1+t7eXtYVcRzH3bt3byJMAwICMjIybDYb66LYYN4l+BRiVAyTR11gbpC3jIyMmEwmrVZLCFm+fLkE/2A9wjQzM7OmpoZ1UeKRVJfgI4hR8WBukNdZrdbVq1fTeNLr9X19fawrmlZbW5vRaAwKClJUmNrtdgl2CV6HGJ3a/fv3T5w44YtPpm9nu4cp5gbxMDg4aDQa582bRwhZuXKlXAYaNDc3GwwG9zCV/twNfmiXoNFoCCErVqyQYJfgRYjRqQ0PDz/zzDPffvutjz4fc4OEKCkpWbVqFSGEHiYxNDTEuqK5mRymf//9N+uivElGXYJXIEanVVZWVlpa6tNLTJ4bdPXqVZ9eUe4GBgaMRiM9TGLt2rWyfpn99u3bBoOB3jT0mzD16BL++OMP1hWJATHKHuYGzVJxcfGyZcuIhA+T4GFymP7zzz+si+Lp8uXLsu4SeEOMcu3t7VIYJ4O5QTPo6enR6/UqlYoQkpSU5H9vBzU1NU2EqUajycrKkleYuncJzz77rNL+6SJGufT09Pz8fNZVPIS5QZOdO3du8eLFhJCgoKADBw748dGBTU1Ner2enpBIw1QWMzd//vln/+sS5gQxytXU1ERFRUlqPBfmBlHuJ5pt3ry5urqadUViaGxs9AjT+vp61kVNzaNLUOybWohRjuO4I0eOfP/996yr8KTwuUEWi2XRokVEDiea+YL0w1Q5XcIjIUalToFzg9ra2l5//XX6y+PFF1/0g+fXvN26dcsjTKVwAG13d7cCu4QZKChGz507d+zYMdZV8DR5bpC/hmlBQcHChQuJrE408zUapnQXkVar1ev1//77L6tiFN4lTElBMdrS0hIdHV1ZWcm6EP78e25Qa2vra6+9Rtc46enpt2/fZl2RtFRXV2dlZbmHqcijjtElTEdBMcpxnNlsfuGFF+T++9Mv5wYVFBTQOVhyPNFMTKzCdKJLCA8Pz8vLQ5fgTlkx6nK5tm3b5h+DDieHqd1uZ10UH42NjS+99BJd4+zYsYNhuyojVVVVHmHa0tLio2vdvXsXXcLM/DBGR0dHZxj20d/fL2ItPkfDVKZzg+hhEvPnzyeEREZGyvdEM1Zu3rzp6zBFlzAbfhij3d3dsbGxJSUlrAsRjxznBjU0NKSlpU3M8W1vb2ddkVzRMKVvEAUGBur1+rt37wr/WPcu4dVXX0WXMAM/jFGO4ywWS0JCwuDgIOtCRCWXMB0bGzObzaGhoYSQ6Ojob775hnVF/qCysjIzM5PuhA8JCTEYDLzDFF3CXPlnjHIc98Ybb8zy0CQ/I/G5QXV1dTqdbmIR2tnZyboiv+IepqGhoQaDobW1dU6fgC6BB3nH6AyPC9vb22NiYhT12o87Cc4Ncj9M4sknnzx79izbevxYRUUFjzBFl8CbvGM0MzOzsLBwuq9eu3bNzx4ozZV05gZVVFQkJyfT7a5ZWVl+dqKZNN24ccMjTNva2qb75ps3b27cuBFdAj/yjtHS0tLY2Nju7m7WhUga27lB7kfOxcXF/frrr6JdGrj/hmlYWNjkMEWXIJy8Y5TjuP3792dnZ7OuQgaYjLqw2WzPPfccGT/RzO8Pk5Asu93uHqZGo5E2BB5dAlYk/Mg+Rvv7++Pj44uKilgXIg+ihenQ0NDEYRLx8fE4A1UKrFZreno67dwjIiLS0tLokXPSPJhaRuQRozabbYZXj86fPx8XF+evZ7f6gq/nBl25cuXpp58m4yeaKfwOtdRYrdaMjAxCyNq1a9EleIU8YrS6unrmycqHDx9uamoSsyQ/4Iu5Qe4nmq1ZswaHSklWSUlJTU2N1WplXYg/kEeMchx38ODBHTt2sK7CDzU0NHiEKe9RF5cuXXrqqafI+Ilmw8PD3i0VQJpkE6NOp3P9+vVnzpxhXYh/Ejg3yOFwGAwG+j5iYmKiYrfrgjJJLkZnmK1gt9tjYmJm2PsGAvGbG1RUVLR06VIln2gGCietGO3p6YmKiprhTIIPPvhg586dYpakQLMPU3rkHN1Gs27dOj8YewrAg7RilOO4kydPbty4cbrJysPDw6mpqRg2I4JHzg368ccfY2NjcZgEgORi1OVybd++Xb6HJvmZKecGuZ9olpKSIqMJpwC+oOI4jkhMY2Pjpk2brly5snLlSta1ACGE2O32jz76yGKxcBwXHBys0Wh6e3vDwsI+/fTTffv20RUrgGIx+wEwGo1Xr16d8kvLly/Pzc3ds2ePBCNemdatW3f27Fn6drbT6UxISNDpdNevX9+/fz8yFIDZarSwsDA3N9dms9Exwx5cLteWLVveeuut9957T/zaYAbNzc3h4eERERG00wcAlk19ZmZmQkLCoUOHpvxqTU3N1q1ba2trIyMjRS4MAGD2WMZoZ2dnYmKixWKhM2Ymu3PnzuLFi0WuCgBgTnx+Y6ujo6O8vHzKLy1cuPDw4cM5OTkjIyNTfgMyFACkz+cxWlVVtWvXLofDMeVX33777RUrVphMJl+XAQDgI2I09fv27RsdHc3Pz5/yq62trUlJScXFxXS+LwCAvIgRowMDA4mJiV988cXLL7885Td8+eWXn3/+eVlZGR0iCwAgI2oRrhEaGpqfn79nz56Kigp6+LWH7OxsrVaLDTQAIEfiPanPyckJCQk5ceKEOJcDABCHeDHqcDgSExPPnDmj0+nEuSIAgAjEe5MvIiLi5MmT77777sDAgGgXBQDwNbG33+/evXvRokVHjhwR86IAAL4j9lyJ48ePt7e3u1wuka8LAOAjUhyUBwAgI5hyBgAgyP8BZXa/6L+6v98AAAAASUVORK5CYII=\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d896620>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCC[C@@H](I)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d896620>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCCC(C)Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11cdc1e40>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCCC(C)Br\n"
     ]
    }
   ],
   "source": [
    "reaction_smarts = '[C:1][C@H:2]([CH3:3])[I:4]>>[C:1][CH:2](Br)[CH3:3]'\n",
    "reactant_smiles = 'CCCC[C@@H](I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### ....that will be introduced\n",
    "In retro direction, this reaction produces a racemic product from a chiral precursor"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [C:1][CH:2]([CH3:3])[I:4]>>[C:1][C@H:2](Br)[CH3:3]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e260>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCCC(I)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e260>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@@H](C)Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e260>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCC[C@@H](C)Br\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [C:1][CH:2]([CH3:3])[I:4]>>[C:1][C@@H:2](Br)[CH3:3]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e260>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCCC(I)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87c030>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@H](C)Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87c030>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCC[C@H](C)Br\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [C:1][CH:2]([CH3:3])[I:4]>>[C:1][C@H:2]([CH3:3])Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x10d06f210>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCCC(I)C\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x10d06f210>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC[C@H](C)Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x10d06f210>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCC[C@H](C)Br\n"
     ]
    }
   ],
   "source": [
    "reaction_smarts = '[C:1][CH:2]([CH3:3])[I:4]>>[C:1][C@H:2](Br)[CH3:3]'\n",
    "reactant_smiles = 'CCCCC(I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reaction_smarts = '[C:1][CH:2]([CH3:3])[I:4]>>[C:1][C@@H:2](Br)[CH3:3]'\n",
    "reactant_smiles = 'CCCCC(I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reaction_smarts = '[C:1][CH:2]([CH3:3])[I:4]>>[C:1][C@H:2]([CH3:3])Br'\n",
    "reactant_smiles = 'CCCCC(I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [C:1][CH:2]([C:3])[I:4]>>[C:1][C@H:2]([C:3])Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87eee0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: CCCCC(I)C\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAAUOUlEQVR4nO3deVBT58IG8DchEHYEw+6CslRFEXCpwkBRGbWKWttSHe/Y3jpjHK9VpuPVuNxPdDqOcabflDJTS1wYtdp+Dep1qXah1BYESaUFJC6IVVyAIJshJBCScL4/DiaulJCQk0Oe318xhHMeHX18z3nf98ChKIoAAMBAcZkOAADAbqhRAACL8JgOAIxpa6iVilfTrzlcJ9+g0Ylv/yskcjKzqQBYB6NRx6XTdiruXJuetiplxb9fT1v1uPH+0f+8Z9DrmM4FwDIYjTq68LgUb0EwIcTTN+BY5oq2hlpnV/easoKR46bKi87MeX8r0wEB7B1q1NG1Ke7pddrO9lbZd7l+wWGCkZF3Ky/9cGAH14kXNimB6XQALIAadXRf71pJOByDTmvQ6yYmL6Ev6g267uXbcyOmzGY6HQALoEYd3bovC70FwRTVU19TeXznP26Wfu/u5efMd4uIn8V0NAB2wBQTEEIIh8MNjYoTjIi4J5cRQrg8Z8LhMB0KgB0wGnV09L1RrUZV9dt/625VJL2XwXQiAJZBjTq6w1vfJoRwuE5+waNT/7k9Ysqs2qoSDEQB+o+DPfVA++vPX/9v94djJiet2HGU6SwAbIJ7o9CL5+Kq79Zq1e1MBwFgGdQo9HL18CaEaDUqpoMAsAxqFHrx3T0JIV2oUQAzoUahF9/dmxCCi3oAc6FGoRff3ZNwOFpNB2YdAcyCGoVeXCeeM9+Nonp0XWqmswCwCWoUTFzdvQghXWrcHgUwA2oUTPj0ZH0nahTADKhRMOG7exFCtBiNApgDNQomTy7qMVkPYAbUKJjwsQIfwHyoUTChR6OoUQCzoEbBhL432qXBRT2AGVCjYML3wBQTgNlQo2Cid/V3GjG1ToVdTABmQI2Cyf02/f/knPtZdoPpIABsghoFEx8fH0KIUqlkOggAm6BGwQQ1CjAAqFEwoWu0vR0z9QBmQI2Cibe3N8FoFMBMqFEwwUU9wACgRsEENQowAKhRMHF1dXVxcenu7tZqtUxncSA6nW7v3r0ffvgh00FggPBz6uEZ/v7+zc3NjY2NAQEBTGdxCDKZbNWqVdevX+dyuVevXo2OjmY6EZgNo1F4Bq7rbaazs3PLli2JiYnXr18PDw8vKChAh7IUj+kAYF9YXaN//PGHXq8fO3asv78/01n+RklJyapVq6qrq3k83oYNG/bs2ePu7s50KBggjEbhGSxdOtrQ0LB06dLp06cvXbp0zJgxGRkZCoWC6VAvp9FotmzZkpSUVF1dPXHixJKSks8//xwdymqoUXgG65aOUhR18ODB8ePHnz592svLKzQ0VK1WZ2dnR0ZGbtu2raWlhemAzygsLIyNjd27dy+XyxWJRGVlZdOmTWM6FFgKNQrPYNdFfW1t7bx581avXq1UKhcuXCiXy69cuVJZWZmenq5Wq/fs2RMWFpaRkdHY2Mh0UqJUKtesWZOSklJTUxMTEyOTycRiMZ/PZzoXWAMF8ERtbe2ECRMIIcnJyQ8ePGA6Tl96enokEomXlxchxNfXVyKRPPeBioqK9PR0DodDCPH09BSJRC0tLYxEpSjqwoULI0eOJIQ4OzuLRCKtVstUEhgMqFGgKIpSKBTr16+nB0dubm6EED6fv27duocPHzId7SX++uuvWbNm0eOA9PT0R48eveqTpaWlaWlp9CfpMm1tbbVl1La2NqFQSAeYMWPG9evXbXl2sA3UqKNrb28Xi8X0LVFCiLe39xdffLFy5UonJydCiIuLi1AotJ8yNRgMEonEw8ODEBIYGHjixIn+fNfly5cZKdNz586FhobS/zOJxWK9Xm+Dk4LtoUYdV0dHh1gs9vX1Nd7hiYqKunHjBv3Va9eu2VuZyuXy119/3TgIbW5uNuvbS0pKjGXq5eU1qGXa2Ni4cuVK+lyJiYk3b94cpBOBPUCNOiKtViuRSIKCgp6+S75w4cLHjx8/98kXy7Surs72gXU6nXFCJjg4+PTp0wM+VHFx8XNl2tbWZsWoFEVJpVKBQEAIcXd3F4vFBoPBuscHe4MadSwGg0EqlY4dO/bpAuVwOCKRqI9/7XK53FimfD7fxmV69erVqVOn0jlXrlxplSHkIJUpvXyVPuzcuXNra2stPybYP9SoozAYDF9//XVkZORzSzU8PT1PnjzZnyPQZcrlco1lWl9fP6iZu7u7xWKxi4sLISQsLCw/P9+6x7906VJqair95+Dn55eZmfnieLz/pFKpn58fIcTHx0cikfT09FgxKtgz1KhDyM/Pj4+Pf3G5W3h4eFVVlVmHqqqqMi4kcnd337BhQ0NDw2BkLi8vj4uLowehQqFQpVINxlkoiioqKpozZw79BzJ8+PABlGldXd3ixYvpIyxYsMDO14qB1aFGh7hLly4lJye/WKCEkOTk5D6WCvXt6tWrxjL18PCwbpl2dnaKRCL6HkJ4ePjFixetdeQ+FBUVzZ49++kyVSqVf/tdTy9fHTZs2IvLV8ERoEaHLJlMZrz99yKhUNjd3W3hKV4sU4VCYeExi4uLx40bRwjhcrlCobCjo8PCA5qlqKjIuCJVIBD0XaZ37twxNm9aWhojk29gD1CjQ9C1a9eM7fYiPp+fm5trxdPRmy8tL1O1Wm0chEZHR8tkMiuGNEtRUVFKSkofZUovX/X09CSEBAYG5uXlMRUV7AFqdEipra0VCoV0E71UaGhoaWnpYJzaws2XhYWF9PQXj8cTiURdXV2DEdIsRUVFb7zxhrFMxWKxWq2mKKqmpsb4fnp6elNTE9NJgWGo0SHiwYMHGzZs6PtRFwkJCYM0HWRElyl9un7uF1IqlRs2bKAXAMTExJSVlQ1qQnNduHBh+vTp9O8oKCho8eLFrq6u9H9I3333HdPpwC6gRlmvublZJBLRG+H7sHr1aps9EaP/my+///77UaNGEbt/Zkd+fj5dplFRUfQglMEHnYC9QY2ymEqlEovF9KPt+sDj8cRise3j9b358rlndly7ds32Cc117ty5ioqKgoICpoOAfUGNspJarc7KyurPT50TCATM/rN/6X4hPLMDhhLUKMt0d3dLJJKQkJC/LVBCyOTJk+/evct0ZIqiqMLCQuNCIuMPzEhOTr516xbT0QAshR+wzDLZ2dkZGRn9+eTy5csPHTpkVz/kp7i4eOfOnUqlsqGh4aOPPtq0aRM9swTAavjJoCzz8OHDv/2Mk5PT7t27N2/e/Kqlo0xJTEzMz89XqVR8Pp/eKQ8wBGA0yjJKpTI6Orquru5VH/D29v7qq6+MW7wBYLDhkoplfHx8vvzyy1d9NSoqqrS0FB0KYEuoUfZZtGjRsmXLXnx/wYIFMpls/Pjxto8E4MhwUc9KTU1N0dHRTU1N9C85HM727dt37dqFGRsA28O/Olby9/fPzs6mX3t6ekql0k8++QQdCsAIzNSz1fLly+/fv19eXr5169aYmBim4wA4LlzUAwBYBJeBAAAWQY0CAFgENQoAYBHUKACARVCjAAAWQY0CAFgENQoAYBHUKACARVCjAAAWQY0CAFgENQoAYBHUKACARVCjAAAWQY0CAFgENQoAYBE8ttlxtTXUSsWr6dccrpNv0OjEt/8VEjmZ2VQArIPRqOPSaTsVd65NT1uVsuLfr6etetx4/+h/3jPodUznAmAZjEYdXXhcircgmBDi6RtwLHNFW0Ots6t7TVnByHFT5UVn5ry/lemAAPYONero2hT39DptZ3ur7Ltcv+AwwcjIu5WXfjiwg+vEC5uUwHQ6ABZAjTq6r3etJByOQac16HUTk5fQF/UGXffy7bkRU2YznQ6ABVCjjm7dl4XegmCK6qmvqTy+8x83S7939/Jz5rtFxM9iOhoAO2CKCQghhMPhhkbFCUZE3JPLCCFcnjPhcJgOBcAOGI06OvreqFajqvrtv3W3KpLey2A6EQDLoEYd3eGtbxNCOFwnv+DRqf/cHjl1zt2rlzAQBeg/DkVRTGcAu1BfU/nrN/8bNGbC7JVbmM4CwCYYjUIvbaeq5srPui4N00EAWAZTTNDL1d2bEKLVqJgOAsAyqFHoxffwJoR0oUYBzIQahV58d09CiFbdznQQAJZBjUIv+qIeo1EAc6FGoZeTs4uTs0uPXqfv7mI6CwCboEbBpHdAiut6AHOgRsGE7+FFCNFqOpgOAsAmqFEw4bvTNYrRKIAZUKNg8uSiHrNMAGZAjYLJk4t6jEYBzIAaBZMnG5lwbxTADKhRMKFX4GOmHsAsqFEwofeD4qIewCyoUTBx9vTzCYlUd+PZiQBmQI2Cyc0m6uP9haeKbjIdBIBNUKNg4u3tTQhRKpVMBwFgE9QomPj4+BDUKICZUKNgQtdoezummADMgBoFE1zUAwwAahRMcFEPMACoUTBBjQIMAGoUTDw8PHg8nkaj0ev1TGdxLBcvXjx48CDTKWCAUKNgwuFwvLy8CGaZbKi9vX3t2rVz5sxZv379rVu3mI4DA4EahWdglsmWfvzxx0mTJuXk5PB4vIyMjLCwMKYTwUDwmA4A9oXVt0e1Wm1XVxf9W7BzSqVy8+bNBw4coCgqNjY2Nzc3Li6O6VAwQBiNwjNYunSUoqj9+/eHh4fPmzcvISHh3LlzTCfqy/nz5ydOnLh//34+ny8Wi8vKytChrIYahWew8aL+5s2biYmJa9asqaurk8vlly9fXrx4cVJSUkFBAdPRntfW1rZmzZq0tLSHDx8mJCSUl5eLRCInJyemc4FFUKPwDHZd1Ov1+r1798bFxV2+fDkoKOjUqVONjY1ZWVlBQUGXLl1KTU1NTEy0n5FpXl7ea6+9tn//fjc3N7FYXFhYOG7cOKZDgTVQAE9Zu3YtIUQoFPb09DCd5W9UVVVNmzaN/mucnp7e0tJi/FJHR0dWVlZgYCD91cTExPz8fAajKhSKd955hw6TlJR069YtBsOA1aFG4RkVFRWzZs0ihEycOFEqldpnmXZ3d4vFYj6fTwgZPXr0Tz/99NKPqVSqrKysgIAAY5n+/PPPNo5KUZRUKh0+fDghxNvbOysry2Aw2D4DDCrUKPSqq6ujX+zbty80NJSunvj4+LNnz9pVmVZUVMTHxxNCOByOUChsb2/v+/MqlUosFvv5+RnLtKCgwDZR6+vrlyxZQp93/vz59+7ds815wcZQo0BRFKVWq9etW2esS61WK5FIjGUaExNjDyPTzs7OzMxMZ2dnQsjYsWPNakO6TH19fY1l+ssvvwxe1J6eniNHjtCnGzZsmEQiGbxzAeNQow6tsbHxxIkTr/qqXZVpSUnJ+PHjCSFcLlcoFHZ0dAzgIO3t7c+V6cWLF62dlLp7925qaip9CnpS3uqnALuCGnVoDx8+jIiI6Pu6mC7TkJAQuhcmT55s4zLVaDTGVUERERG//fabhQeky3TYsGHGMv3111+tErWnp0cikXh6ehJCAgICjhw5YpXDgp1DjTqib7/99tNPP6Vfa7Xa/nxLV1fX02U6Y8aMs2fPDmbGXkVFRVFRUYQQHo8nEom6urqsdeTnyjQ1NbW0tNSSA96+fTslJcW4cuDRo0fWigp2DjXqQJRKpV6vpyjq3r17/v7+A1h2Q5dpcHCwDcpUrVaLRCIul0sImTRp0pUrVwbjLC0tLZmZmcb9o6mpqTKZzNyDGAwGiUTi4eFBCAkKCjp58uRgRAW7hRp1ICtWrDAOQsvLy3U63cCOo1ars7KyjGU6c+ZMq5fpDz/8MGrUKEKIs7OzSCTq55B5wJqbm58r099//72f3yuXy6dPn24chDY3Nw9qVLBDqNEhrqenJy8vj16rePfu3YCAAGut/aaXuAcFBdENkpCQYJUyffz4sVAo5HA4hJDY2Ng///zT8mP2k7llqtPpjMtXQ0JCzpw5Y7OoYFdQo0OcwWBITk7Ozs6mf3n8+PHy8nIrHv+5/UIWlun58+dHjBhBCHF1dRWLxfQtCBujy5R+tgBdpi+9n1BZWTllyhTj8lWlUmn7qGAnUKND04MHD4wbOqurqwUCwe3btwfvdJZvvmxtbRUKhca7BDdu3BikqP3U1NT0XJmWlZXRX6L3ULm4uBBCxowZw8jOKLArqNGhRqPRUBRlMBgSExNzcnLoNz/99NPPPvtssE/94n6hflbM2bNn6TUA9DM7GBmEvlRTU5NIJHJ3d6dHnWlpaYcPH54wYYJxEKpSqZjOCMxDjQ4peXl58+bNo1/fuHEjICDA9hsQzdp8qVAo3n33XfqTSUlJ1dXVtozaTwqF4uOPP3ZzcyNPnoA1bty44uJipnOBvUCNDgVyuZzeEa/T6aZOnZqbm0u/v3v37mXLljESqT+bL6VSqUAgICx5ZkdDQ0NGRsbRo0e3bdvW2dnJdBywI6jRoWDXrl2LFi2iX1dWVvr7+z948ICiKJ1Op1AoGAz2qs2X9fX1b731Fv0mntkBbIcaZbGNGzfSLanT6eLj448dO0a/n5mZmZaWxmi0Z7S2tu7YscO4kCg2NpaeuvH19T18+DDT6QAsxaEoigCr6PV6Ho9HCNm+fbtcLj9z5gwhpKKi4s0336yoqAgMDOzu7v7mm2/ef/99evWlnVCpVPv27ROLxa6urk1NTfPnz8/JyaGXNwGwGmqUZVpbW2fOnFlcXCwQCLRa7ZQpU3bu3EnP0mzbtu327dtSqZTpjH1pbW29c+eOs7Pz5MmTmc4CYB2oUfbZtGlTfX398ePHCSEymWzJkiVVVVX+/v5dXV0ffPDBgQMHjKsdAcAGUKPso9Vq4+Lidu/evXTpUkLIxo0bGxsbjx07xnQuAAeFGmWly5cvp6enV1VV+fr6ajSauLi4U6dORUdHM50LwBGhRtlq/fr1Go3m0KFDhBCNRkPvtAEA20ONslVHR0dMTExOTs7cuXOZzgLg0FCjLFZZWTly5EjjtksAYARqFADAIlymAwAAsBtqFADAIv8Payt43D5AQm4AAAAASUVORK5CYII=\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d88cd00>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2 RDKit outcomes: CCCC[C@H](C)Br.CCCC[C@@H](C)Br\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d88cd00>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: CCCCC(C)Br\n"
     ]
    }
   ],
   "source": [
    "# Chirality specified in precursor, but symmetry makes them equivalent\n",
    "reaction_smarts = '[C:1][CH:2]([C:3])[I:4]>>[C:1][C@H:2]([C:3])Br'\n",
    "reactant_smiles = 'CCCCC(I)C'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Molecule needs two stereocenters, diastereoselective"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [c:1]-[CH;@@;D3;+0:2]1-[O;H0;D2;+0]-[CH;@;D3;+0:3]-1-[c:4]>>[c:1]/[CH;D2;+0:2]=[CH;D2;+0:3]/[c:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e440>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: c1ccccc1[C@H]2[C@H](O2)c1ccccc1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e440>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: C(=C/c1ccccc1)\\c1ccccc1\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e440>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [c:1]-[CH;@@;D3;+0:2]1-[O;H0;D2;+0]-[CH;@;D3;+0:3]-1-[c:4]>>[c:1]/[CH;D2;+0:2]=[CH;D2;+0:3]/[c:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e440>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: c1ccccc1[C@H]2[C@@H](O2)c1ccccc1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e440>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: C(=C/c1ccccc1)\\c1ccccc1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d87e440>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: C(=C/c1ccccc1)\\c1ccccc1\n"
     ]
    }
   ],
   "source": [
    "# preparing a trans epoxide from a trans alkene\n",
    "reaction_smarts = '[c:1]-[CH;@@;D3;+0:2]1-[O;H0;D2;+0]-[CH;@;D3;+0:3]-1-[c:4]>>[c:1]/[CH;D2;+0:2]=[CH;D2;+0:3]/[c:4]'\n",
    "reactant_smiles = 'c1ccccc1[C@H]2[C@H](O2)c1ccccc1' # cis epoxide, should not match\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'c1ccccc1[C@H]2[C@@H](O2)c1ccccc1' # trans epoxide, should  match\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [c:1]-[CH;@@;D3;+0:2]1-[O;H0;D2;+0]-[CH;@@;D3;+0:3]-1-[c:4]>>[c:1]/[CH;D2;+0:2]=[CH;D2;+0:3]\\[c:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d657760>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: c1ccccc1[C@H]2[C@H](O2)c1ccccc1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d657760>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: C(=C\\c1ccccc1)\\c1ccccc1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d657760>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: C(=C\\c1ccccc1)\\c1ccccc1\n",
      "\n",
      "================================================================================\n",
      "================================================================================\n",
      "================================================================================\n",
      "\n",
      "Reaction SMARTS: [c:1]-[CH;@@;D3;+0:2]1-[O;H0;D2;+0]-[CH;@@;D3;+0:3]-1-[c:4]>>[c:1]/[CH;D2;+0:2]=[CH;D2;+0:3]\\[c:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d657760>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: c1ccccc1[C@H]2[C@@H](O2)c1ccccc1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d657760>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: C(=C\\c1ccccc1)\\c1ccccc1\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVR4nO3UwQ3AIBDAsNL9dz52IA+EZE+QV9bMfACc+m8HALzNRgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAxEYBEhsFSGwUILFRgMRGARIbBUhsFCCxUYDERgESGwVIbBQgsVGAZAMTDQQpVReZYAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d657760>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 RDChiral outcomes: \n"
     ]
    }
   ],
   "source": [
    "# preparing a cis epoxide from a cis alkene\n",
    "reaction_smarts = '[c:1]-[CH;@@;D3;+0:2]1-[O;H0;D2;+0]-[CH;@@;D3;+0:3]-1-[c:4]>>[c:1]/[CH;D2;+0:2]=[CH;D2;+0:3]\\[c:4]'\n",
    "reactant_smiles = 'c1ccccc1[C@H]2[C@H](O2)c1ccccc1' # cis epoxide, should match\n",
    "show_outcomes(reaction_smarts, reactant_smiles)\n",
    "sep_bar()\n",
    "reactant_smiles = 'c1ccccc1[C@H]2[C@@H](O2)c1ccccc1' # trans epoxide, should not match\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Reaction SMARTS: [C:1](=[O:3])[O:2][C:4]>>[C:1](=[O:3])[OH:2].O[C:4]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d644c60>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Input SMILES: C1C(=O)OCCC1\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d88c4e0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDKit outcomes: CCCC(=O)O.CCCCO\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcIAAACWCAIAAADCEh9HAAAABmJLR0QA/wD/AP+gvaeTAAAXhUlEQVR4nO3de1BU5/0G8GcFBBTkIix45aKoEUW8GzHRGmKqok6rtNV0Nc04ZiaTLGnaKdNk7JpmMuH3RyaLTpIx7bRZrZ0Ea7RoY4wxxgtQNfEG4pWbBhG8AiL3fX9/vBRxg3qWPezZy/MZ/4iHd3e/CeHhPe/t6IQQICKinuqjdQFERO6NMUpE5BDGKBGRQxijREQOYYwSETmEMUpE5BDGKBGRQxijREQOYYwSETmEMUpE5BDGKBGRQxijROQRGhqQn48zZ9De7uRPZowSkZsrL8eMGQgJQUoKxo1DUBCWL0dDQ8dXBw3Cs8/aviQxEZMnq/X5vmq9ERGRBs6dQ2oqKiuxejXmzcPdu9iyBZ9+ivPn8c03CA2FELBabV9ltUK9w+3YGyUid/b666isxCef4C9/QXo6fvMb7NmDlStx4gQ+/NA5JTBGichtXbqEL7/EvHlYter+RR8fmM0IC8PHHzunCt7UE5Hb+v57CIHly22vh4Vh7lxs24Z79wDgxg3s2vVAg/p6BAaqVQVjlIjcVlkZAMTHd/Ol4cMBoKoKAE6fxqJFtg30erWqYIwSkdsKDwdwf1K+q+pq6HQYPBgAZs7EZ5898NU5c1SsgjFKRG5r1CgAKCjA/PkPXG9txYEDiInpuHMPCMDQoQ808PNTsQpOMRGR25o5E/Hx2LABP/zwwPUPPkBlJV591TlVsDdKRG6rb1+89x6WLcOkSVi7FklJaGrC7t3Izsa0aXj5ZedUwRglIvdUWIg33sA//oFvv8ULL8Bo7Lju74+XXkJ2Nvz9AUCng05n+9puL/aUjs+pJyI3IwTefx9vvommJvzhD/i//wOAqioUFUGvR2IifJ3aQWSMEpFbuXYNL76I3bsBwGDARx+hf39tK+IUExG5j3/9C+PGYfdu6PX497+xaZPmGQrGKFHvuXLlSllZ2bZt26w/PhqD7FVXh5deQno6bt7Ec8/h5EksXqx1TR0Yo0S9YuvWrcnJyQsWLFi2bFlCQkJ2dnZjY6PWRbmtggJMmoSPP0ZgIMxm7N6NQYO0ruk+xiiRyu7cufP888//4he/uHXrVnBwcFxcXGlp6WuvvRYfH5+VlVVbW6t1gW6lrQ3r1uGpp1BSgqlTcfIkMjJUnGRXhyAi9eTn58fHxwMIDAw0m81CiPb29tzc3OnTp8ufuKCgIKPReOXKFa0rdQdnz4rJkwUgfH1FZqZobta6oO4xRonU0dLSYjKZfHx8AEybNu3ChQs2DQ4dOpSWlqbT6QD07dvXYDCcOXNGk1LdgNUqNm4U/fsLQMTGioMHtS7oURijRCooLi6eNGkSAF9f38zMzJaWloe1PHnypMFg8PX1BdCnT5+0tLS8vDxnluoGqqtFWpoABCAMBlFXp3VBj8EYJXKI1WrduHFjv379AMTFxR06dEjJq0pLS41Go3wVgJSUlNzcXKvV2tvVuoEvvhDR0QIQERFi+3atq1GEMUrUc9euXVu4cKGMQoPBUF9fb9fLa2pqTCZTuDztDRg/frzFYnlET9bDNTQIo7GjE/rss+KHH7QuSCnGKFEPbdu2LSIiAkBkZOSOHTt6/D719fVms3nYsGEyTGNiYsxm8927d1Us1Q0cOSISEgQgAgJEVpZob9e6IDswRonsVldXt2bNGpl68+bNq6ysdPw9W1paLBbL2LFj5duGhIQYjcarV686/s6urrVVZGUJPz8BiHHjxKlTWhdkN8YokX3++9//jhw5snNJk7oDmlarNTc3NyUlRYapv7+/wWD48aS/5ygtFSkpAhA6nTAaXXZJ06MxRj1cS0tLfX19a2ur1oV4gtbW1s4lTVOmTDl37lzvfVbX1VFyQv/o0aO993HasFhEUJAAxPDh4ttvta6m5xijnqygoGDUqFHp6eleOtymqpKSkpkzZ8pQMxqNzU7pN124cMFoNPrLczP/N6HvhM/tdTU1YsmSjtmk9HRx65bWBTmEMeqZWlpa/vjHP8p+U1hYmPwhjIiIWLdu3Y0bN7Suzv1YLJagoCA5/3PgwAEnf3pVVZXJZAoJCZHfx4kTJ1oslra2NieXoZbWL74QUVECEGFh4rPPtC5HBYxRD3T27NnJkycD8PHxyczMbGxszM3NlT0pAP3791+zZo0nD7epqrq6evH/ThJKT0+/pV2/qba21mw2D/rfkRwjRowwm8337t3Tqp4euHfvntFofGXCBOHjI+bOFZ6yI5Yx6lHkUvD+/fsDiI2NPfjgFrofD7cdO3ZMq1LdwpdffiljKzQ0dMuWLVqXI4QQTU1NFotllHwiJqDX600mk4bhrtzRo0dHjx4t583Offyx8KC9BoxRz1FdXb1o0aLOpeB1D9lCd/r0aYPB4Pe/B8x6znCbqmS/Sf7KSU1NdbWTRORxJ1OnTpXfxODgYKPR+IOrrldva2vLysrq27cvgLFjxx4/flzrilTGGPUQu3fvjo6Olv2mf/7zn49tX15enpmZ2TncNmnSJLceblPX0aNHZXcvICAgKyur3YWXgss7DPlNlMedFBcXa13UA8rLy59++mkAOp1uzZo1DQ0NWlekPsao25P9JvmDlJqaaleX5M6dOz8ebmtsbOy9al1c135TYmLiyZMnta5IkRMnThgMBjmjKIdrCgoKtC5KCCFycnJCQ0MBREdH/+c//9G6nN6iRYzevSvy8kRRkWDfx2FHjhxJSEhwsN8kh9vk+wCIiooymUy3b99WvVoXV1ZW9tRTT8l+k9FobGpq0roi+5SUlBiNxsDAQFc47uT27dvLly+XlSxdutSz14eoF6PR0SI11fbi2LFi0qT7fy0rE9OnCx+fjvViAQHiV78SXMzYI62trVlZWXKIc9y4cacc3kLnXsNtqrNYLMHBwQCGDRv2zTffaF1Oz1VXV5tMps5VbklJSRaLxcn7L/bu3TtkyBAAAwYM2LhxozM/WhPqxWhUlJg71/bimDFi4sSOfz57VgwZIgCxerXIyRF/+5t45hkBiIkThfd1fBxUWlo6a9asXuo3/Xi47ezZsyq+v6vp2m9KT0+/efOm1hWpoK6uzmw2Dx06VP57xcbGms1mJ4xLNjY2ZmZm9unTB8CMGTMuXbrU25/oCpwYo/PnC0B88sn9r7a1iZUrBSDeeUe1MrxA51Lw4cOH79+/v5c+5fjx46453Kaur776qrPftGnTJq3LUVlzc7PFYnniiSc691+YTKbeu78uLCycMGECAF9fX5PJ5D0zls6K0YsXhU4n5s2zbXDrlggLEzExqpXh0WpqapYsWeLMpeAuNdymrq79ppkzZ5aUlGhdUW+RwzVPPvlk5/4Lo9FYUVGh4kdYrVaz2Sw3rY4ZM+a7775T8c1dn6oxmpQkdu584M+QIR0x+umnAhB//3s3L1y6VADCE5dBqGvPnj2DBw8GEBISsnnzZmd+tCsMt6mrsLAwKSkJgJ+fn/f0m7ruv/Dz80tPT1cl7yoqKubMmdO5pMkLj25QNUblxJHNHxmj774rANHtZuTf/lYAwjvGUHqm61LwuXPnXr58WZMytBpuU5fsN3nwUvDHUnf/RU5Ojjy9X6/X79y5U8U63YiqMTpzprhy5YE/I0Z0xOjGjQIQX3zRzQtXrBA6nXCrrcHOdPr06fHjx8stdK6wFNxmuC0yMrJXh9vUVVFRMXv2bM9eCq5QeXm50WiU+4Z7tv/izp07v/71r+XL58+fX1VV1XvVujhnjY3u3y8AsXatbYOWFjFkiIiNVa0MD9Le3u6y/Sab4Tb57HV1h9tUl5OTI8cloqKidu3apXU5LuH69etZWVly/xuAkSNHKtx/sW/fPvnUk379+pnNZieU6sqcFaPNzSI+XoSG2p7p8v77AhDvvSe+/lp89hkX5Hdyly10NsNtBoOhqKhI66Jsde03/fznP3eXvrPT2LX/oqWlxWQyyam5adOm8agw4dQFT9u3Cx8fERkp1q8X334rvvxSZGQIQEybJhobxYwZAhBxccJs5nRTZ78pOjr6i25HQlzMqVOnOp+9rtPp0tLS9u7dq3VRHfbt2yfHc4ODg71hKXiPyTuMKVOmyDAdMGCA0Wi0eczUmTNnJk6cKJc0ZWZmeu9DTB+k6i6mZ56xvfjEEw/sYjp0SIwYcX/2yd9fvPSSaGoS7e1i48aO5wICIipKvPOOux+I3TO3b99+/vnn5f/Hy5Ytc69+U1lZWddnr0+ePFnb406ampq6LgW/ePGiVpW4lx/vvzh37pw8g1F+c+Pi4g4fPqx1mS5Eiz31V6+Kr74SJ08KmxUz7e0iN7ejWwqIoCBhNAqNZqU18fXXX8t+k1tvobt+/brJZBo4cKC9w23qKioqSk5O9sKl4GopKCj42c9+Jn8J+fj4xMTEyG9o55Kmtra24uJij9yUYS+XPOHp0CGRliZ0OgEIPz9hMAjXG25TV9el4E8++aQHbKG7e/eu2WwePny4/NmLjo522nEnXftN8fHxeXl5TvhQT3Xp0iWj0RgQEPDcc89FRkbu2LGj80t1dXVyMb+G5bkIl4xR6dQpYTAIX9+Oh6+mpQkPvY8oKiry1C10Sobb1FVVVTV//nz5cQaDwQuXgjtoxYoVer3e5ndPZWXljRs3rl+/btNY/q7if2QXjlGprEwYjaJfv447/ZQUkZvrMY8f8J4tdF2H2+Sz13vj6cRbt26Vgwl6vZ5H+veM3G38+eefK2kcGxsLwIP30Srk8jEq1dQIk0kMHNgRpgkJwmwW7nYcpI3Lly//5Cc/8aotdN9//73NcSdHjhxR5Z1ra2vXrFkjY/qnP/3p1atXVXlbLyT/M3700UdKGk+fPh1Afn5+b1fl4twkRqX6emE2i+HDO8I0OlqYTOLOHa3L6glv3kLXOdzWdTOiI8ed5OfnjxgxAkBgYKDZbPaMk1O0snbtWgDr1q1T0lg++6vrgKl3cqsYlVpahMUiEhM7wnTAAGE0CvfpfXTtN3nzFrpr166ZTCb5hAkAycnJPTjupLW11WQyye7t1KlTz58/30vVeo8NGzYAePnll5U0Xr16NQD3XVWiFjeMUclqFXv3irS0+0tQDQbh8j9FeXl58fHx3ELXSR53Ik/8lAsSlT97vbi4eNKkSVwKrq6cnBwAS5cuVdL4zTffBPDnP/+5t6tycW4bo52++04YDB0PJunTR6SlCZWG29Qlt9DJfhO30NmQx52MGTNGhqk87uQRp9DLJU3yWI3Y2NiDBw86s1rPduDAAQCzZs1S0jg7OxvAK6+80ttVuTj3j1Hp4kVhNIqAgAcm9F0G+01KyNVRctai87iTH58KeO3atc5Jf4PBUF9fr0m1nurcuXMAEhISlDT+9NNPAaSnp/d2VS7OU2JUunJFvP66CA6WYfqtwbB161ZtT5bjFroe6HrcidyMeObMGfmlzz//PCIiAkBERMT27du1rdMj3bp1C0BISIiSxvv37wfw9NNP93ZVLs6zYlSqrRVmc/uoUTEhIXIfi/LhNnVdu3Zt4cKF7Df1zPHjx3/5y192ro5auHDh4sWLOTXX26xWq1zIrORHpri4GMDo0aOdUJgr88QYFUII0dTY+OGHH8p1MHIz4rvvvnvHiaujtm3bJpeC22yhI7uUlpZ2Hnei1+sDAgJc4exqzyYPdlByeuyNGzcAhIWFOaEqV+axMSp1O9x2xebMU7XV1dV1LmmaN29er+599BLV1dVvv/12Xl5ecXGx1rV4vsmTJwM4evToY1tarVY/Pz+dTqfuI77djofHaKdHDLepq6CgYOTIkVwKTu5rwYIFABTuCpGPWeztromL6wPvMGvWrJ07d544ccJgMFit1s2bN48fP37RokX5+flqfURbW9u6detmzZp16dKlKVOmnDhxIiMjQwY3kRvR6/UAqqurlTSOiopS3thTeUuMShMmTNi0adOFCxfkZsRdu3alpKTIhBVCOPLOpaWls2fPfuutt4QQRqMxLy9v9OjRapVN5EwyGWtqapQ3Zox6nbi4uOzs7PLycpPJFB4enpeXt3jxYpmwra2tPXjDTZs2JSUl5efnx8TE7N+/Pzs7Wz6Hjsgd2ZWMsuuqMHM9lTfGqBQZGblu3bqKigqz2Txs2LDCwsJVq1YlJCRkZ2c3NDQofJOampolS5asWrWqoaEhPT395MmT8jl0RO7LrhhlbxTeHKNSUFBQRkZGSUmJxWIZO3ZsRUXFa6+9NmTIkIyMjKqqqke/ds+ePcnJybm5uaGhoVu2bMnJyek8aIPIfdnVwbRrINVTeXuMSn5+fitXriwqKsrNzU1JSamtrV2/fn1cXNzKlSsvXrz44/aNjY0ZGRlyEXhqampRUdGKFSucXzZRb+hBb5Q39dRBp9MtWrTo8OHDcnVUS0vL5s2bx4wZs2jRomPHjnU2O3bsWHJy8vr16/39/bOysvbs2dN5QBGRB+BNvb10Ds5Qe7CioqINGzZYLJbm5mYAKSkpv//978+fP/+nP/2ppaUlMTFxy5Yt8hlKRJ5E7gdtb29vbm728/N7dONTp04lJyePHz/+9OnTzinPBTFGH+Py5cvvv//+X//617t378orffr0+d3vfvf222/LrcdEnic6Orq6uvrq1auDBg16dMuqqqrBgwfr9Xpv7pAyRhW5devWBx98UFBQMHTo0BUrVsyZM0frioh6UVJSUmFh4YkTJ5KTkx/dsq2tzd/fX6fTNTc3y3NkvJCv1gW4h/DwcPmMGiJvEBUVVVhYqGTiyNfXNzw8/MaNGzdv3pSz9l6IU0xEZIuzTHZhjBKRLcaoXRijRGSrByvwvXnpKGOUiGyxN2oXxigR2WKM2oUxSkS2eMiTXRijRGTLrmRkb5QxSkS29Hq9TqerqamxWq2PbcwYZYwSka2+ffuGhoa2tbXdvn37sY3HR0UVjRy5p6nJCYW5Ju5iIqJuvJWa6lNd7V9djYEDH90yQK9PvHQJfftCCHjlw8fYGyWibrxaU/PywYNBSm7VAwIwYABaWlBb2/t1uSLGKBF1R26QVzj/HhUFAN46PMoYJaLu2JWMjFEiIluMUcUYo0TUHbtu6u1q7HEYo0TUHfZGFWOMElF3GKOKMUaJqDt2JSNv6omIbMkY5YInBRijRNSdfv3Qvz8aG1Ff//jGjFEiom4oD0fGKBFRN5SHY3AwAgPR0ICGht4uygUxRonoITjLpAxjlIgegtvqlWGMEtFDcOmoMoxRInqIHtzUM0aJiO7rwU09x0aJiO7jTb0yjFEiegje1CvDGCWih7ArGXlTT0RkKzQU/v6oq0Nj4+Mb86aeiMiWTofISAC4fv3xjRmjRETdUB6O4eHw88OdO2hu7u2iXA1jlIgeTnmM6nSIiIAQirqunoUxSkQPx1kmBRijRPRwPLxZAcYoET0cV+ArwBgloofjY5YVYIwS0cOxN6oAY5SIHo4xqgBjlIgejgfgK+CrdQFE5MIGDoSPD27eRFsbfB8XF4mJeOstjB3rlMpciE4IoXUNROTCZs+Gry+2b8eAAVqX4qIYo0REDuHYKBHZr6EB+fk4cwbt7VqXoj3GKBHZo7wcM2YgJAQpKRg3DkFBWL7cOx9P34k39USk2LlzSE1FZSVWr8a8ebh7F1u2YN8+TJyIb75BaKjW9WmDMUpEii1YgN278cknWLWq40p7O158EZs24Z138MYbmhanGcYoESlz6RJGjcKzz2LPngeu376NESMwYADKy7UpTGscGyUiZb7/HkJg+XLb62FhmDsXFRW4d0+LsrTHGCUiZcrKACA+vpsvDR8OAFVVTq3HZTBGiUiZ8HAA3U/KV1dDp8PgwU6uyEUwRolImVGjAKCgwPZ6aysOHEBMDAIDnV+UK2CMEpEyM2ciPh4bNuCHHx64/sEHqKzEq69qVJb2OFNPRIrt2IFlyxAejrVrkZSEpibs3o3sbEybhgMHEBCgdX3aYIwSkT0OH8YLL6CkpOOv/v544QVkZ8PfX9OytMQYJSL7VVWhqAh6PRITH3+AnqdjjBIROYRTTEREDmGMEhE5hDFKROQQxigRkUMYo0REDmGMEhE5hDFKROQQxigRkUP+H16t4wToFMwwAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<rdkit.Chem.rdchem.Mol at 0x11d644c60>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1 RDChiral outcomes: O=C(O)CCCCO\n"
     ]
    }
   ],
   "source": [
    "# Multiple prods?\n",
    "# Intramolecular esterification (in forward direction)\n",
    "reaction_smarts = '[C:1](=[O:3])[O:2][C:4]>>[C:1](=[O:3])[OH:2].O[C:4]'\n",
    "reactant_smiles = 'C1C(=O)OCCC1'\n",
    "show_outcomes(reaction_smarts, reactant_smiles)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python3 (askcos_newrdkit)",
   "language": "python",
   "name": "askcos_newrdkit"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
